590
Tutorial: Exact Numerical Computation in Algebra and Geometry Chee K. Yap Courant Institute of Mathematical Sciences New York University and Korea Institute of Advanced Study (KIAS) Seoul, Korea 34th ISSAC, July 28–31, 2009 Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 1 / 113

Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Tutorial:Exact Numerical Computation

in Algebra and Geometry

Chee K. Yap

Courant Institute of Mathematical SciencesNew York University

andKorea Institute of Advanced Study (KIAS)

Seoul, Korea

34th ISSAC, July 28–31, 2009

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 1 / 113

Page 2: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Tutorial: Exact Numerical Computation in Algebraand Geometry

Many problems in Computational Science & Engineering (CS&E) aredefined on the continuum. Standard algorithms for these problems arenumerical and approximate. Their computational techniques includeiteration, subdivision, and approximation. Such techniques are rarelyseen in exact or algebraic algorithms. In this tutorial, we discuss a modeof computation called Exact Numerical Computation (ENC) thatachieves exactness through numerical approximation. Through ENC,we naturally incorporate iteration, subdivision and approximation intoour design of algorithms for computer algebra and computationalgeometry. Such algorithms are both novel and practical. This tutorial onENC is divided into three equal parts:(a) ENC and Zero Problems(b) Explicitization and Subdivision Algorithms(c) Complexity Analysis of Adaptivity

Page 3: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Overview of Tutorial

Background is algebraic and geometric computation

Motivation: much of computing world (CS&E) is continuous

But Theoretical Computer Science has gone completely discrete

The discrete view alone is inadequate for CS&E.

What role for exact computation in the continuum?

Geometric insights holds the key

Exact Numerical Computation (ENC) is a proposed synthesis

Lecture in 3 parts (a) ENC and Zero Problems (b) Explicitization and Subdivision Algorithms (c) Complexity Analysis of Adaptivity

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 3 / 113

Page 4: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Overview of Tutorial

Background is algebraic and geometric computation

Motivation: much of computing world (CS&E) is continuous

But Theoretical Computer Science has gone completely discrete

The discrete view alone is inadequate for CS&E.

What role for exact computation in the continuum?

Geometric insights holds the key

Exact Numerical Computation (ENC) is a proposed synthesis

Lecture in 3 parts (a) ENC and Zero Problems (b) Explicitization and Subdivision Algorithms (c) Complexity Analysis of Adaptivity

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 3 / 113

Page 5: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Overview of Tutorial

Background is algebraic and geometric computation

Motivation: much of computing world (CS&E) is continuous

But Theoretical Computer Science has gone completely discrete

The discrete view alone is inadequate for CS&E.

What role for exact computation in the continuum?

Geometric insights holds the key

Exact Numerical Computation (ENC) is a proposed synthesis

Lecture in 3 parts (a) ENC and Zero Problems (b) Explicitization and Subdivision Algorithms (c) Complexity Analysis of Adaptivity

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 3 / 113

Page 6: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Overview of Tutorial

Background is algebraic and geometric computation

Motivation: much of computing world (CS&E) is continuous

But Theoretical Computer Science has gone completely discrete

The discrete view alone is inadequate for CS&E.

What role for exact computation in the continuum?

Geometric insights holds the key

Exact Numerical Computation (ENC) is a proposed synthesis

Lecture in 3 parts (a) ENC and Zero Problems (b) Explicitization and Subdivision Algorithms (c) Complexity Analysis of Adaptivity

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 3 / 113

Page 7: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Overview of Tutorial

Background is algebraic and geometric computation

Motivation: much of computing world (CS&E) is continuous

But Theoretical Computer Science has gone completely discrete

The discrete view alone is inadequate for CS&E.

What role for exact computation in the continuum?

Geometric insights holds the key

Exact Numerical Computation (ENC) is a proposed synthesis

Lecture in 3 parts (a) ENC and Zero Problems (b) Explicitization and Subdivision Algorithms (c) Complexity Analysis of Adaptivity

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 3 / 113

Page 8: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Overview of Tutorial

Background is algebraic and geometric computation

Motivation: much of computing world (CS&E) is continuous

But Theoretical Computer Science has gone completely discrete

The discrete view alone is inadequate for CS&E.

What role for exact computation in the continuum?

Geometric insights holds the key

Exact Numerical Computation (ENC) is a proposed synthesis

Lecture in 3 parts (a) ENC and Zero Problems (b) Explicitization and Subdivision Algorithms (c) Complexity Analysis of Adaptivity

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 3 / 113

Page 9: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Overview of Tutorial

Background is algebraic and geometric computation

Motivation: much of computing world (CS&E) is continuous

But Theoretical Computer Science has gone completely discrete

The discrete view alone is inadequate for CS&E.

What role for exact computation in the continuum?

Geometric insights holds the key

Exact Numerical Computation (ENC) is a proposed synthesis

Lecture in 3 parts (a) ENC and Zero Problems (b) Explicitization and Subdivision Algorithms (c) Complexity Analysis of Adaptivity

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 3 / 113

Page 10: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Overview of Tutorial

Background is algebraic and geometric computation

Motivation: much of computing world (CS&E) is continuous

But Theoretical Computer Science has gone completely discrete

The discrete view alone is inadequate for CS&E.

What role for exact computation in the continuum?

Geometric insights holds the key

Exact Numerical Computation (ENC) is a proposed synthesis

Lecture in 3 parts (a) ENC and Zero Problems (b) Explicitization and Subdivision Algorithms (c) Complexity Analysis of Adaptivity

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 3 / 113

Page 11: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Overview of Tutorial

Background is algebraic and geometric computation

Motivation: much of computing world (CS&E) is continuous

But Theoretical Computer Science has gone completely discrete

The discrete view alone is inadequate for CS&E.

What role for exact computation in the continuum?

Geometric insights holds the key

Exact Numerical Computation (ENC) is a proposed synthesis

Lecture in 3 parts (a) ENC and Zero Problems (b) Explicitization and Subdivision Algorithms (c) Complexity Analysis of Adaptivity

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 3 / 113

Page 12: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Overview of Tutorial

Background is algebraic and geometric computation

Motivation: much of computing world (CS&E) is continuous

But Theoretical Computer Science has gone completely discrete

The discrete view alone is inadequate for CS&E.

What role for exact computation in the continuum?

Geometric insights holds the key

Exact Numerical Computation (ENC) is a proposed synthesis

Lecture in 3 parts (a) ENC and Zero Problems (b) Explicitization and Subdivision Algorithms (c) Complexity Analysis of Adaptivity

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 3 / 113

Page 13: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Overview of Tutorial

Background is algebraic and geometric computation

Motivation: much of computing world (CS&E) is continuous

But Theoretical Computer Science has gone completely discrete

The discrete view alone is inadequate for CS&E.

What role for exact computation in the continuum?

Geometric insights holds the key

Exact Numerical Computation (ENC) is a proposed synthesis

Lecture in 3 parts (a) ENC and Zero Problems (b) Explicitization and Subdivision Algorithms (c) Complexity Analysis of Adaptivity

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 3 / 113

Page 14: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

PART 1

Exact Numeric Computation andthe Zero Problem

“The history of the zero recognition problem is somewhat confused bythe fact that many people do not recognize it as a problem at all.”

— DANIEL RICHARDSON (1996)

“Algebra is generous, she often gives more than is asked of her.”

— JEAN LE ROND D’ALEMBERT (1717-83)Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 4 / 113

Page 15: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

Coming Up Next

1 Introduction: What is Geometric Computation?

2 Five Examples of Geometric Computation

3 Exact Numeric Computation – A Synthesis

4 Exact Geometric Computation

5 Constructive Zero Bounds

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 5 / 113

Page 16: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

Introduction to Geometric Computation

PUZZLE 1:Is Geometry discrete or continuous?

PUZZLE 2:How come numbers do not arise in Computational Geometry?

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 6 / 113

Page 17: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

Introduction to Geometric Computation

PUZZLE 1:Is Geometry discrete or continuous?

PUZZLE 2:How come numbers do not arise in Computational Geometry?

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 6 / 113

Page 18: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

Introduction to Geometric Computation

PUZZLE 1:Is Geometry discrete or continuous?

PUZZLE 2:How come numbers do not arise in Computational Geometry?

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 6 / 113

Page 19: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

Introduction to Geometric Computation

PUZZLE 1:Is Geometry discrete or continuous?

PUZZLE 2:How come numbers do not arise in Computational Geometry?

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 6 / 113

Page 20: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

What is Computational Geometry?

Geometric Objects

Prototype: Points, Lines, Circles (Euclidean Geometry)

Arrangement of hyperplanes and hypersurfaces

Zero sets and their Singularities

Semi-algebraic sets

Non-algebraic sets

Geometric complexes

Geometric Problems

Constructing geometric objects

Searching in geometric complexes or structures

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 7 / 113

Page 21: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

What is Computational Geometry?

Geometric Objects

Prototype: Points, Lines, Circles (Euclidean Geometry)

Arrangement of hyperplanes and hypersurfaces

Zero sets and their Singularities

Semi-algebraic sets

Non-algebraic sets

Geometric complexes

Geometric Problems

Constructing geometric objects

Searching in geometric complexes or structures

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 7 / 113

Page 22: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

What is Computational Geometry?

Geometric Objects

Prototype: Points, Lines, Circles (Euclidean Geometry)

Arrangement of hyperplanes and hypersurfaces

Zero sets and their Singularities

Semi-algebraic sets

Non-algebraic sets

Geometric complexes

Geometric Problems

Constructing geometric objects

Searching in geometric complexes or structures

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 7 / 113

Page 23: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

What is Computational Geometry?

Geometric Objects

Prototype: Points, Lines, Circles (Euclidean Geometry)

Arrangement of hyperplanes and hypersurfaces

Zero sets and their Singularities

Semi-algebraic sets

Non-algebraic sets

Geometric complexes

Geometric Problems

Constructing geometric objects

Searching in geometric complexes or structures

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 7 / 113

Page 24: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

What is Computational Geometry?

Geometric Objects

Prototype: Points, Lines, Circles (Euclidean Geometry)

Arrangement of hyperplanes and hypersurfaces

Zero sets and their Singularities

Semi-algebraic sets

Non-algebraic sets

Geometric complexes

Geometric Problems

Constructing geometric objects

Searching in geometric complexes or structures

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 7 / 113

Page 25: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

What is Computational Geometry?

Geometric Objects

Prototype: Points, Lines, Circles (Euclidean Geometry)

Arrangement of hyperplanes and hypersurfaces

Zero sets and their Singularities

Semi-algebraic sets

Non-algebraic sets

Geometric complexes

Geometric Problems

Constructing geometric objects

Searching in geometric complexes or structures

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 7 / 113

Page 26: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

What is Computational Geometry?

Geometric Objects

Prototype: Points, Lines, Circles (Euclidean Geometry)

Arrangement of hyperplanes and hypersurfaces

Zero sets and their Singularities

Semi-algebraic sets

Non-algebraic sets

Geometric complexes

Geometric Problems

Constructing geometric objects

Searching in geometric complexes or structures

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 7 / 113

Page 27: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

What is Computational Geometry?

Geometric Objects

Prototype: Points, Lines, Circles (Euclidean Geometry)

Arrangement of hyperplanes and hypersurfaces

Zero sets and their Singularities

Semi-algebraic sets

Non-algebraic sets

Geometric complexes

Geometric Problems

Constructing geometric objects

Searching in geometric complexes or structures

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 7 / 113

Page 28: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

What is Computational Geometry?

Geometric Objects

Prototype: Points, Lines, Circles (Euclidean Geometry)

Arrangement of hyperplanes and hypersurfaces

Zero sets and their Singularities

Semi-algebraic sets

Non-algebraic sets

Geometric complexes

Geometric Problems

Constructing geometric objects

Searching in geometric complexes or structures

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 7 / 113

Page 29: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

What is Computational Geometry?

Geometric Objects

Prototype: Points, Lines, Circles (Euclidean Geometry)

Arrangement of hyperplanes and hypersurfaces

Zero sets and their Singularities

Semi-algebraic sets

Non-algebraic sets

Geometric complexes

Geometric Problems

Constructing geometric objects

Searching in geometric complexes or structures

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 7 / 113

Page 30: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

What is Computational Geometry?

Geometric Objects

Prototype: Points, Lines, Circles (Euclidean Geometry)

Arrangement of hyperplanes and hypersurfaces

Zero sets and their Singularities

Semi-algebraic sets

Non-algebraic sets

Geometric complexes

Geometric Problems

Constructing geometric objects

Searching in geometric complexes or structures

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 7 / 113

Page 31: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

Dual Descriptions of Geometry

Where do Geometric Objects Live?

As Points in Parametric Space P E.g., for lines given by L(a,b,c) := aX +bY + c = 0,

the space is P :=(a,b,c) : a2 +b2 > 0

⊆R

3.

As Loci in Ambient Space A E.g., Locus of the Line(1,−2,0) is

the set(x ,y) ∈R

2 : x−2y = 0⊆A= R

2.

More involved example:Cell Complexes (in the sense of algebraic topology)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 8 / 113

Page 32: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

Dual Descriptions of Geometry

Where do Geometric Objects Live?

As Points in Parametric Space P E.g., for lines given by L(a,b,c) := aX +bY + c = 0,

the space is P :=(a,b,c) : a2 +b2 > 0

⊆R

3.

As Loci in Ambient Space A E.g., Locus of the Line(1,−2,0) is

the set(x ,y) ∈R

2 : x−2y = 0⊆A= R

2.

More involved example:Cell Complexes (in the sense of algebraic topology)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 8 / 113

Page 33: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

Dual Descriptions of Geometry

Where do Geometric Objects Live?

As Points in Parametric Space P E.g., for lines given by L(a,b,c) := aX +bY + c = 0,

the space is P :=(a,b,c) : a2 +b2 > 0

⊆R

3.

As Loci in Ambient Space A E.g., Locus of the Line(1,−2,0) is

the set(x ,y) ∈R

2 : x−2y = 0⊆A= R

2.

More involved example:Cell Complexes (in the sense of algebraic topology)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 8 / 113

Page 34: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

Dual Descriptions of Geometry

Where do Geometric Objects Live?

As Points in Parametric Space P E.g., for lines given by L(a,b,c) := aX +bY + c = 0,

the space is P :=(a,b,c) : a2 +b2 > 0

⊆R

3.

As Loci in Ambient Space A E.g., Locus of the Line(1,−2,0) is

the set(x ,y) ∈R

2 : x−2y = 0⊆A= R

2.

More involved example:Cell Complexes (in the sense of algebraic topology)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 8 / 113

Page 35: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

Dual Descriptions of Geometry

Where do Geometric Objects Live?

As Points in Parametric Space P E.g., for lines given by L(a,b,c) := aX +bY + c = 0,

the space is P :=(a,b,c) : a2 +b2 > 0

⊆R

3.

As Loci in Ambient Space A E.g., Locus of the Line(1,−2,0) is

the set(x ,y) ∈R

2 : x−2y = 0⊆A= R

2.

More involved example:Cell Complexes (in the sense of algebraic topology)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 8 / 113

Page 36: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

Dual Descriptions of Geometry

Where do Geometric Objects Live?

As Points in Parametric Space P E.g., for lines given by L(a,b,c) := aX +bY + c = 0,

the space is P :=(a,b,c) : a2 +b2 > 0

⊆R

3.

As Loci in Ambient Space A E.g., Locus of the Line(1,−2,0) is

the set(x ,y) ∈R

2 : x−2y = 0⊆A= R

2.

More involved example:Cell Complexes (in the sense of algebraic topology)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 8 / 113

Page 37: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

Dual Descriptions of Geometry

Where do Geometric Objects Live?

As Points in Parametric Space P E.g., for lines given by L(a,b,c) := aX +bY + c = 0,

the space is P :=(a,b,c) : a2 +b2 > 0

⊆R

3.

As Loci in Ambient Space A E.g., Locus of the Line(1,−2,0) is

the set(x ,y) ∈R

2 : x−2y = 0⊆A= R

2.

More involved example:Cell Complexes (in the sense of algebraic topology)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 8 / 113

Page 38: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

Computation: Geometric vs. Algebraic

Where is the Computation?

Algebraic Computation: in parameter space P E.g., Grobner bases Polynomial manipulation, Expensive (double exponential time)

Geometric Computation: in ambient space A E.g., Finding Zeros of Polynomials in R

n

Numerical, Combinatorial, Adaptive (single exponential time)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 9 / 113

Page 39: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

Computation: Geometric vs. Algebraic

Where is the Computation?

Algebraic Computation: in parameter space P E.g., Grobner bases Polynomial manipulation, Expensive (double exponential time)

Geometric Computation: in ambient space A E.g., Finding Zeros of Polynomials in R

n

Numerical, Combinatorial, Adaptive (single exponential time)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 9 / 113

Page 40: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

Computation: Geometric vs. Algebraic

Where is the Computation?

Algebraic Computation: in parameter space P E.g., Grobner bases Polynomial manipulation, Expensive (double exponential time)

Geometric Computation: in ambient space A E.g., Finding Zeros of Polynomials in R

n

Numerical, Combinatorial, Adaptive (single exponential time)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 9 / 113

Page 41: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

Computation: Geometric vs. Algebraic

Where is the Computation?

Algebraic Computation: in parameter space P E.g., Grobner bases Polynomial manipulation, Expensive (double exponential time)

Geometric Computation: in ambient space A E.g., Finding Zeros of Polynomials in R

n

Numerical, Combinatorial, Adaptive (single exponential time)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 9 / 113

Page 42: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

Computation: Geometric vs. Algebraic

Where is the Computation?

Algebraic Computation: in parameter space P E.g., Grobner bases Polynomial manipulation, Expensive (double exponential time)

Geometric Computation: in ambient space A E.g., Finding Zeros of Polynomials in R

n

Numerical, Combinatorial, Adaptive (single exponential time)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 9 / 113

Page 43: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction: What is Geometry?

Computation: Geometric vs. Algebraic

Where is the Computation?

Algebraic Computation: in parameter space P E.g., Grobner bases Polynomial manipulation, Expensive (double exponential time)

Geometric Computation: in ambient space A E.g., Finding Zeros of Polynomials in R

n

Numerical, Combinatorial, Adaptive (single exponential time)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 9 / 113

Page 44: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

(Contd.) Computation: Geometric vs. Algebraic

Answer to PUZZLE 1: “BOTH”Geometry is discrete (in P) (algebraic computation)

Geometry is continuous (in A) (analytic computation)

Actions in the Ambient Space

Geometric Relationships on different Object types arise in A E.g., Point is ON/LEFT/RIGHT of a Line

Analytic properties of Objects comes from their loci

E.g., Proximity, Approximations, Isotopy, etc

Page 45: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

(Contd.) Computation: Geometric vs. Algebraic

Answer to PUZZLE 1: “BOTH”Geometry is discrete (in P) (algebraic computation)

Geometry is continuous (in A) (analytic computation)

Actions in the Ambient Space

Geometric Relationships on different Object types arise in A E.g., Point is ON/LEFT/RIGHT of a Line

Analytic properties of Objects comes from their loci

E.g., Proximity, Approximations, Isotopy, etc

Page 46: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

(Contd.) Computation: Geometric vs. Algebraic

Answer to PUZZLE 1: “BOTH”Geometry is discrete (in P) (algebraic computation)

Geometry is continuous (in A) (analytic computation)

Actions in the Ambient Space

Geometric Relationships on different Object types arise in A E.g., Point is ON/LEFT/RIGHT of a Line

Analytic properties of Objects comes from their loci

E.g., Proximity, Approximations, Isotopy, etc

Page 47: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

(Contd.) Computation: Geometric vs. Algebraic

Answer to PUZZLE 1: “BOTH”Geometry is discrete (in P) (algebraic computation)

Geometry is continuous (in A) (analytic computation)

Actions in the Ambient Space

Geometric Relationships on different Object types arise in A E.g., Point is ON/LEFT/RIGHT of a Line

Analytic properties of Objects comes from their loci

E.g., Proximity, Approximations, Isotopy, etc

Page 48: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

(Contd.) Computation: Geometric vs. Algebraic

Answer to PUZZLE 1: “BOTH”Geometry is discrete (in P) (algebraic computation)

Geometry is continuous (in A) (analytic computation)

Actions in the Ambient Space

Geometric Relationships on different Object types arise in A E.g., Point is ON/LEFT/RIGHT of a Line

Analytic properties of Objects comes from their loci

E.g., Proximity, Approximations, Isotopy, etc

Page 49: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

(Contd.) Computation: Geometric vs. Algebraic

Answer to PUZZLE 1: “BOTH”Geometry is discrete (in P) (algebraic computation)

Geometry is continuous (in A) (analytic computation)

Actions in the Ambient Space

Geometric Relationships on different Object types arise in A E.g., Point is ON/LEFT/RIGHT of a Line

Analytic properties of Objects comes from their loci

E.g., Proximity, Approximations, Isotopy, etc

Page 50: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

(Contd.) Computation: Geometric vs. Algebraic

Answer to PUZZLE 1: “BOTH”Geometry is discrete (in P) (algebraic computation)

Geometry is continuous (in A) (analytic computation)

Actions in the Ambient Space

Geometric Relationships on different Object types arise in A E.g., Point is ON/LEFT/RIGHT of a Line

Analytic properties of Objects comes from their loci

E.g., Proximity, Approximations, Isotopy, etc

Page 51: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

(Contd.) Computation: Geometric vs. Algebraic

Answer to PUZZLE 1: “BOTH”Geometry is discrete (in P) (algebraic computation)

Geometry is continuous (in A) (analytic computation)

Actions in the Ambient Space

Geometric Relationships on different Object types arise in A E.g., Point is ON/LEFT/RIGHT of a Line

Analytic properties of Objects comes from their loci

E.g., Proximity, Approximations, Isotopy, etc

Page 52: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Geometry is discrete (algebraic view)

Geometry is continuous (analytic view)

Up Next : What do Computational Geometers think?

Page 53: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Geometry is discrete (algebraic view)

Geometry is continuous (analytic view)

Up Next : What do Computational Geometers think?

Page 54: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Geometry is discrete (algebraic view)

Geometry is continuous (analytic view)

Up Next : What do Computational Geometers think?

Page 55: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Geometry is discrete (algebraic view)

Geometry is continuous (analytic view)

Up Next : What do Computational Geometers think?

Page 56: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Geometry is discrete (algebraic view)

Geometry is continuous (analytic view)

Up Next : What do Computational Geometers think?

Page 57: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Coming Up Next

1 Introduction: What is Geometric Computation?

2 Five Examples of Geometric Computation

3 Exact Numeric Computation – A Synthesis

4 Exact Geometric Computation

5 Constructive Zero Bounds

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 12 / 113

Page 58: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Five Examples of Geometric Computation

(I) Convex Hulls

(II) Euclidean Shortest Path

(III) Disc Avoiding Shortest Path

(IV) Mesh Generation

(V) Discrete Morse Theory

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 13 / 113

Page 59: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Five Examples of Geometric Computation

(I) Convex Hulls

(II) Euclidean Shortest Path

(III) Disc Avoiding Shortest Path

(IV) Mesh Generation

(V) Discrete Morse Theory

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 13 / 113

Page 60: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Five Examples of Geometric Computation

(I) Convex Hulls

(II) Euclidean Shortest Path

(III) Disc Avoiding Shortest Path

(IV) Mesh Generation

(V) Discrete Morse Theory

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 13 / 113

Page 61: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Five Examples of Geometric Computation

(I) Convex Hulls

(II) Euclidean Shortest Path

(III) Disc Avoiding Shortest Path

(IV) Mesh Generation

(V) Discrete Morse Theory

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 13 / 113

Page 62: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Five Examples of Geometric Computation

(I) Convex Hulls

(II) Euclidean Shortest Path

(III) Disc Avoiding Shortest Path

(IV) Mesh Generation

(V) Discrete Morse Theory

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 13 / 113

Page 63: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Five Examples of Geometric Computation

(I) Convex Hulls

(II) Euclidean Shortest Path

(III) Disc Avoiding Shortest Path

(IV) Mesh Generation

(V) Discrete Morse Theory

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 13 / 113

Page 64: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Five Examples of Geometric Computation

(I) Convex Hulls

(II) Euclidean Shortest Path

(III) Disc Avoiding Shortest Path

(IV) Mesh Generation

(V) Discrete Morse Theory

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 13 / 113

Page 65: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(I) Convex Hulls

Convex Hull of Points in Rn

n = 1: finding max and min

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 14 / 113

Page 66: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(I) Convex Hulls

Convex Hull of Points in Rn

n = 1: finding max and min

n = 2,3: find a convex polygon or polytope

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 14 / 113

Page 67: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(I) Convex Hulls

Convex Hull of Points in Rn

n = 1: finding max and min

n = 2,3: find a convex polygon or polytope

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 14 / 113

Page 68: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(I) Convex Hulls

Convex Hull of Points in Rn

n = 1: finding max and min

n = 2,3: find a convex polygon or polytope

8

23

4

5

6

7

1

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 14 / 113

Page 69: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(I) Convex Hulls

Convex Hull of Points in Rn

n = 1: finding max and min

n = 2,3: find a convex polygon or polytope

8

23

4

5

6

7

1 Can be reduced to a single predicateOrientation(P0,P1, . . . ,Pn)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 14 / 113

Page 70: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(I) Convex Hulls

Convex Hull of Points in Rn

n = 1: finding max and min

n = 2,3: find a convex polygon or polytope

8

23

4

5

6

7

1 Can be reduced to a single predicateOrientation(P0,P1, . . . ,Pn)

Main issue is combinatorial in nature

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 14 / 113

Page 71: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(I) Convex Hulls

Convex Hull of Points in Rn

n = 1: finding max and min

n = 2,3: find a convex polygon or polytope

8

23

4

5

6

7

1 Can be reduced to a single predicateOrientation(P0,P1, . . . ,Pn)

Main issue is combinatorial in nature

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 14 / 113

Page 72: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(I) Convex Hulls

Convex Hull of Points in Rn

n = 1: finding max and min

n = 2,3: find a convex polygon or polytope

8

23

4

5

6

7

1 Can be reduced to a single predicateOrientation(P0,P1, . . . ,Pn)

Main issue is combinatorial in nature

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 14 / 113

Page 73: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(II) Euclidean Shortest Path (ESP)

Shortest Path amidst Polygonal ObstaclesShortest path from p to q avoiding A,B,C

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 15 / 113

Page 74: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(II) Euclidean Shortest Path (ESP)

Shortest Path amidst Polygonal ObstaclesShortest path from p to q avoiding A,B,C

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 15 / 113

Page 75: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(II) Euclidean Shortest Path (ESP)

Shortest Path amidst Polygonal ObstaclesShortest path from p to q avoiding A,B,C

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 15 / 113

Page 76: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(II) Euclidean Shortest Path (ESP)

Shortest Path amidst Polygonal ObstaclesShortest path from p to q avoiding A,B,C

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 15 / 113

Page 77: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(II) Euclidean Shortest Path (ESP)

Shortest Path amidst Polygonal ObstaclesShortest path from p to q avoiding A,B,C

p

q

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 15 / 113

Page 78: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(II) Euclidean Shortest Path (ESP)

Shortest Path amidst Polygonal ObstaclesShortest path from p to q avoiding A,B,C

p

q

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 15 / 113

Page 79: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(II) Euclidean Shortest Path (ESP)

Shortest Path amidst Polygonal ObstaclesShortest path from p to q avoiding A,B,C

p

q

C

B

A

B

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 15 / 113

Page 80: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(II) Euclidean Shortest Path (ESP)

Shortest Path amidst Polygonal ObstaclesShortest path from p to q avoiding A,B,C

p

q

C

B

A

B

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 15 / 113

Page 81: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(II) Euclidean Shortest Path (ESP)

Shortest Path amidst Polygonal ObstaclesShortest path from p to q avoiding A,B,C

p

q

C

B

A

B

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 15 / 113

Page 82: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(II) Euclidean Shortest Path (ESP)

Shortest Path amidst Polygonal ObstaclesShortest path from p to q avoiding A,B,C

p

q

C

B

A

B

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 15 / 113

Page 83: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(II) Euclidean Shortest Path (ESP)

Shortest Path amidst Polygonal ObstaclesShortest path from p to q avoiding A,B,C

p

q

C

B

A

B

Segment length is asquare-root

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 15 / 113

Page 84: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(II) Euclidean Shortest Path (ESP)

Shortest Path amidst Polygonal ObstaclesShortest path from p to q avoiding A,B,C

p

q

C

B

A

B

Segment length is asquare-root

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 15 / 113

Page 85: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(II) Euclidean Shortest Path (ESP)

Shortest Path amidst Polygonal ObstaclesShortest path from p to q avoiding A,B,C

p

q

C

B

A

B

Segment length is asquare-root

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 15 / 113

Page 86: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ESP, contd.

Reduction to Dijkstra’s Algorithm

Combinatorial complexity: O(n2 logn) (negligible)

Sum of Square-roots Problem: Is ∑mi=1 ai

√bi = 0?

Not known to be polynomial-time!

Algebraic Approach: Repeated Squaring Method (Nontrivial forInequalites!)

Ω(2m) (slow, unless you are lucky! (Illustrate))

Numerical Approach: Zero Bound Method O(log(1/|e|)) (fast, unless you are unlucky! (Illustrate))

Luck deals differently for the two approaches

Page 87: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ESP, contd.

Reduction to Dijkstra’s Algorithm

Combinatorial complexity: O(n2 logn) (negligible)

Sum of Square-roots Problem: Is ∑mi=1 ai

√bi = 0?

Not known to be polynomial-time!

Algebraic Approach: Repeated Squaring Method (Nontrivial forInequalites!)

Ω(2m) (slow, unless you are lucky! (Illustrate))

Numerical Approach: Zero Bound Method O(log(1/|e|)) (fast, unless you are unlucky! (Illustrate))

Luck deals differently for the two approaches

Page 88: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ESP, contd.

Reduction to Dijkstra’s Algorithm

Combinatorial complexity: O(n2 logn) (negligible)

Sum of Square-roots Problem: Is ∑mi=1 ai

√bi = 0?

Not known to be polynomial-time!

Algebraic Approach: Repeated Squaring Method (Nontrivial forInequalites!)

Ω(2m) (slow, unless you are lucky! (Illustrate))

Numerical Approach: Zero Bound Method O(log(1/|e|)) (fast, unless you are unlucky! (Illustrate))

Luck deals differently for the two approaches

Page 89: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ESP, contd.

Reduction to Dijkstra’s Algorithm

Combinatorial complexity: O(n2 logn) (negligible)

Sum of Square-roots Problem: Is ∑mi=1 ai

√bi = 0?

Not known to be polynomial-time!

Algebraic Approach: Repeated Squaring Method (Nontrivial forInequalites!)

Ω(2m) (slow, unless you are lucky! (Illustrate))

Numerical Approach: Zero Bound Method O(log(1/|e|)) (fast, unless you are unlucky! (Illustrate))

Luck deals differently for the two approaches

Page 90: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ESP, contd.

Reduction to Dijkstra’s Algorithm

Combinatorial complexity: O(n2 logn) (negligible)

Sum of Square-roots Problem: Is ∑mi=1 ai

√bi = 0?

Not known to be polynomial-time!

Algebraic Approach: Repeated Squaring Method (Nontrivial forInequalites!)

Ω(2m) (slow, unless you are lucky! (Illustrate))

Numerical Approach: Zero Bound Method O(log(1/|e|)) (fast, unless you are unlucky! (Illustrate))

Luck deals differently for the two approaches

Page 91: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ESP, contd.

Reduction to Dijkstra’s Algorithm

Combinatorial complexity: O(n2 logn) (negligible)

Sum of Square-roots Problem: Is ∑mi=1 ai

√bi = 0?

Not known to be polynomial-time!

Algebraic Approach: Repeated Squaring Method (Nontrivial forInequalites!)

Ω(2m) (slow, unless you are lucky! (Illustrate))

Numerical Approach: Zero Bound Method O(log(1/|e|)) (fast, unless you are unlucky! (Illustrate))

Luck deals differently for the two approaches

Page 92: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ESP, contd.

Reduction to Dijkstra’s Algorithm

Combinatorial complexity: O(n2 logn) (negligible)

Sum of Square-roots Problem: Is ∑mi=1 ai

√bi = 0?

Not known to be polynomial-time!

Algebraic Approach: Repeated Squaring Method (Nontrivial forInequalites!)

Ω(2m) (slow, unless you are lucky! (Illustrate))

Numerical Approach: Zero Bound Method O(log(1/|e|)) (fast, unless you are unlucky! (Illustrate))

Luck deals differently for the two approaches

Page 93: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ESP, contd.

Reduction to Dijkstra’s Algorithm

Combinatorial complexity: O(n2 logn) (negligible)

Sum of Square-roots Problem: Is ∑mi=1 ai

√bi = 0?

Not known to be polynomial-time!

Algebraic Approach: Repeated Squaring Method (Nontrivial forInequalites!)

Ω(2m) (slow, unless you are lucky! (Illustrate))

Numerical Approach: Zero Bound Method O(log(1/|e|)) (fast, unless you are unlucky! (Illustrate))

Luck deals differently for the two approaches

Page 94: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(III) Shortest Path Amidst Discs

Shortest Path amidst DiscsShortest path from p to q avoiding discs A,B

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 17 / 113

Page 95: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(III) Shortest Path Amidst Discs

Shortest Path amidst DiscsShortest path from p to q avoiding discs A,B

p −p

q

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 17 / 113

Page 96: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(III) Shortest Path Amidst Discs

Shortest Path amidst DiscsShortest path from p to q avoiding discs A,B

p −p

q

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 17 / 113

Page 97: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(III) Shortest Path Amidst Discs

Shortest Path amidst DiscsShortest path from p to q avoiding discs A,B

p −p

q

A

B

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 17 / 113

Page 98: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(III) Shortest Path Amidst Discs

Shortest Path amidst DiscsShortest path from p to q avoiding discs A,B

p −p

q

A

B

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 17 / 113

Page 99: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(III) Shortest Path Amidst Discs

Shortest Path amidst DiscsShortest path from p to q avoiding discs A,B

p −p

q

A

B

Segment length is asquare-root of an algebraicnumber

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 17 / 113

Page 100: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(III) Shortest Path Amidst Discs

Shortest Path amidst DiscsShortest path from p to q avoiding discs A,B

p −p

q

A

B

Segment length is asquare-root of an algebraicnumber

Arc lengh is rθ

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 17 / 113

Page 101: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(III) Shortest Path Amidst Discs

Shortest Path amidst DiscsShortest path from p to q avoiding discs A,B

p −p

q

A

B

Segment length is asquare-root of an algebraicnumber

Arc lengh is rθ

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 17 / 113

Page 102: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(III) Shortest Path Amidst Discs

Shortest Path amidst DiscsShortest path from p to q avoiding discs A,B

p −p

q

A

B

Segment length is asquare-root of an algebraicnumber

Arc lengh is rθ

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 17 / 113

Page 103: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(III) Shortest Path Amidst Discs

Shortest Path amidst DiscsShortest path from p to q avoiding discs A,B

p −p

q

A

B

Segment length is asquare-root of an algebraicnumber

Arc lengh is rθ

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 17 / 113

Page 104: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Disc Obstacles, contd.

Reduction to Dijkstra’s Algorithm (Again?)

Combinatorial complexity: O(n2 logn) (negligible, exercise)

Path length = γ +αwhere γ is algebraic , but α is transcendental

Not even clear that we can compute this!

Why? Numerical Halting Problem

Analogue of the Turing Halting Problem

Also semi-decidable

Page 105: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Disc Obstacles, contd.

Reduction to Dijkstra’s Algorithm (Again?)

Combinatorial complexity: O(n2 logn) (negligible, exercise)

Path length = γ +αwhere γ is algebraic , but α is transcendental

Not even clear that we can compute this!

Why? Numerical Halting Problem

Analogue of the Turing Halting Problem

Also semi-decidable

Page 106: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Disc Obstacles, contd.

Reduction to Dijkstra’s Algorithm (Again?)

Combinatorial complexity: O(n2 logn) (negligible, exercise)

Path length = γ +αwhere γ is algebraic , but α is transcendental

Not even clear that we can compute this!

Why? Numerical Halting Problem

Analogue of the Turing Halting Problem

Also semi-decidable

Page 107: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Disc Obstacles, contd.

Reduction to Dijkstra’s Algorithm (Again?)

Combinatorial complexity: O(n2 logn) (negligible, exercise)

Path length = γ +αwhere γ is algebraic , but α is transcendental

Not even clear that we can compute this!

Why? Numerical Halting Problem

Analogue of the Turing Halting Problem

Also semi-decidable

Page 108: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Disc Obstacles, contd.

Reduction to Dijkstra’s Algorithm (Again?)

Combinatorial complexity: O(n2 logn) (negligible, exercise)

Path length = γ +αwhere γ is algebraic , but α is transcendental

Not even clear that we can compute this!

Why? Numerical Halting Problem

Analogue of the Turing Halting Problem

Also semi-decidable

Page 109: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Disc Obstacles, contd.

Reduction to Dijkstra’s Algorithm (Again?)

Combinatorial complexity: O(n2 logn) (negligible, exercise)

Path length = γ +αwhere γ is algebraic , but α is transcendental

Not even clear that we can compute this!

Why? Numerical Halting Problem

Analogue of the Turing Halting Problem

Also semi-decidable

Page 110: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Disc Obstacles, contd.

Reduction to Dijkstra’s Algorithm (Again?)

Combinatorial complexity: O(n2 logn) (negligible, exercise)

Path length = γ +αwhere γ is algebraic , but α is transcendental

Not even clear that we can compute this!

Why? Numerical Halting Problem

Analogue of the Turing Halting Problem

Also semi-decidable

Page 111: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Disc Obstacles, contd.

Reduction to Dijkstra’s Algorithm (Again?)

Combinatorial complexity: O(n2 logn) (negligible, exercise)

Path length = γ +αwhere γ is algebraic , but α is transcendental

Not even clear that we can compute this!

Why? Numerical Halting Problem

Analogue of the Turing Halting Problem

Also semi-decidable

Page 112: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Addition/Subtraction of Arc Lengths

Simple Case: Unit DiscsLet A = [C,p,q,n] and A′ = [C′,p′,q′,n′] encode two arc lengths.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 19 / 113

Page 113: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Addition/Subtraction of Arc Lengths

Simple Case: Unit DiscsLet A = [C,p,q,n] and A′ = [C′,p′,q′,n′] encode two arc lengths.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 19 / 113

Page 114: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Addition/Subtraction of Arc Lengths

Simple Case: Unit DiscsLet A = [C,p,q,n] and A′ = [C′,p′,q′,n′] encode two arc lengths.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 19 / 113

Page 115: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Addition/Subtraction of Arc Lengths

Simple Case: Unit DiscsLet A = [C,p,q,n] and A′ = [C′,p′,q′,n′] encode two arc lengths.

θ

θ′

p

q

p′

q′

C

C ′

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 19 / 113

Page 116: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Addition/Subtraction of Arc Lengths

Simple Case: Unit DiscsLet A = [C,p,q,n] and A′ = [C′,p′,q′,n′] encode two arc lengths.

θ

θ′

p

q

p′

q′

C

C ′

θ′

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 19 / 113

Page 117: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Addition/Subtraction of Arc Lengths

Simple Case: Unit DiscsLet A = [C,p,q,n] and A′ = [C′,p′,q′,n′] encode two arc lengths.

θ

θ′

p

q

p′

q′

C

C ′

θ′

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 19 / 113

Page 118: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Addition/Subtraction of Arc Lengths

Simple Case: Unit DiscsLet A = [C,p,q,n] and A′ = [C′,p′,q′,n′] encode two arc lengths.

θ

θ′

p

q

p′

q′

C

C ′

θ′

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 19 / 113

Page 119: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Addition/Subtraction of Arc Lengths

Simple Case: Unit DiscsLet A = [C,p,q,n] and A′ = [C′,p′,q′,n′] encode two arc lengths.

θ

θ′

p

q

p′

q′

C

C ′

θ′

CC ′

θ′

θ

p

q

q′

p′

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 19 / 113

Page 120: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Addition/Subtraction of Arc Lengths

Simple Case: Unit DiscsLet A = [C,p,q,n] and A′ = [C′,p′,q′,n′] encode two arc lengths.

θ

θ′

p

q

p′

q′

C

C ′

θ′

CC ′

θ′

θ

p

q

q′

p′

θ′

q′′

C ′′

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 19 / 113

Page 121: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Addition/Subtraction of Arc Lengths

Simple Case: Unit DiscsLet A = [C,p,q,n] and A′ = [C′,p′,q′,n′] encode two arc lengths.

θ

θ′

p

q

p′

q′

C

C ′

θ′

CC ′

θ′

θ

p

q

q′

p′

θ′

q′′

C ′′

q′′′

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 19 / 113

Page 122: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Computability of Shortest Paths[Chang/Choi/Kwon/Park/Y. (2005)]

Is it really Transcendental?LEMMA: cosθi is algebraic.COROLLARY (Lindemann 1882): θi is transcendental.

Theorem (Unit Disc)Shortest Path for unit disc obstacles is computable.

Rational CaseMuch harder – use Chebyshev functions of first kind.Main issue: how to transfer arc lengths to circles with different radii.

Theorem (Commensurable Radii)Shortest Path for commensurable radii discs is computable.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 20 / 113

Page 123: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Computability of Shortest Paths[Chang/Choi/Kwon/Park/Y. (2005)]

Is it really Transcendental?LEMMA: cosθi is algebraic.COROLLARY (Lindemann 1882): θi is transcendental.

Theorem (Unit Disc)Shortest Path for unit disc obstacles is computable.

Rational CaseMuch harder – use Chebyshev functions of first kind.Main issue: how to transfer arc lengths to circles with different radii.

Theorem (Commensurable Radii)Shortest Path for commensurable radii discs is computable.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 20 / 113

Page 124: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Computability of Shortest Paths[Chang/Choi/Kwon/Park/Y. (2005)]

Is it really Transcendental?LEMMA: cosθi is algebraic.COROLLARY (Lindemann 1882): θi is transcendental.

Theorem (Unit Disc)Shortest Path for unit disc obstacles is computable.

Rational CaseMuch harder – use Chebyshev functions of first kind.Main issue: how to transfer arc lengths to circles with different radii.

Theorem (Commensurable Radii)Shortest Path for commensurable radii discs is computable.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 20 / 113

Page 125: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Computability of Shortest Paths[Chang/Choi/Kwon/Park/Y. (2005)]

Is it really Transcendental?LEMMA: cosθi is algebraic.COROLLARY (Lindemann 1882): θi is transcendental.

Theorem (Unit Disc)Shortest Path for unit disc obstacles is computable.

Rational CaseMuch harder – use Chebyshev functions of first kind.Main issue: how to transfer arc lengths to circles with different radii.

Theorem (Commensurable Radii)Shortest Path for commensurable radii discs is computable.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 20 / 113

Page 126: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Computability of Shortest Paths (contd.)

No complexity Bounds!Elementary methods fail us.Appeal to Baker’s Linear Form in Logarithms: |α0 +∑n

i=1 αi logβi |> B

Theorem (Commensurable Radii Complexity)Shortest Paths for rational discs is in single-exponential time.

Rare positive result from Transcendental Number Theory

First transcendental geometric problem shown computable

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 21 / 113

Page 127: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Computability of Shortest Paths (contd.)

No complexity Bounds!Elementary methods fail us.Appeal to Baker’s Linear Form in Logarithms: |α0 +∑n

i=1 αi logβi |> B

Theorem (Commensurable Radii Complexity)Shortest Paths for rational discs is in single-exponential time.

Rare positive result from Transcendental Number Theory

First transcendental geometric problem shown computable

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 21 / 113

Page 128: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Computability of Shortest Paths (contd.)

No complexity Bounds!Elementary methods fail us.Appeal to Baker’s Linear Form in Logarithms: |α0 +∑n

i=1 αi logβi |> B

Theorem (Commensurable Radii Complexity)Shortest Paths for rational discs is in single-exponential time.

Rare positive result from Transcendental Number Theory

First transcendental geometric problem shown computable

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 21 / 113

Page 129: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

Computability of Shortest Paths (contd.)

No complexity Bounds!Elementary methods fail us.Appeal to Baker’s Linear Form in Logarithms: |α0 +∑n

i=1 αi logβi |> B

Theorem (Commensurable Radii Complexity)Shortest Paths for rational discs is in single-exponential time.

Rare positive result from Transcendental Number Theory

First transcendental geometric problem shown computable

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 21 / 113

Page 130: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(IV) Mesh GenerationMeshing of Surfaces

Surface S = f−1(0) where f : Rn→R (n = 1,2,3)

Wants a triangulated surface S that is isotopic to S

“Tangled Cube” “Chair”

Case n = 1 is root isolation !

Return to meshing in Lecture 2

Applications

Visualization, Graphics, Simulation, Modeling: prerequisite

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 22 / 113

Page 131: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(IV) Mesh GenerationMeshing of Surfaces

Surface S = f−1(0) where f : Rn→R (n = 1,2,3)

Wants a triangulated surface S that is isotopic to S

“Tangled Cube” “Chair”

Case n = 1 is root isolation !

Return to meshing in Lecture 2

Applications

Visualization, Graphics, Simulation, Modeling: prerequisite

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 22 / 113

Page 132: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(IV) Mesh GenerationMeshing of Surfaces

Surface S = f−1(0) where f : Rn→R (n = 1,2,3)

Wants a triangulated surface S that is isotopic to S

“Tangled Cube” “Chair”

Case n = 1 is root isolation !

Return to meshing in Lecture 2

Applications

Visualization, Graphics, Simulation, Modeling: prerequisite

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 22 / 113

Page 133: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(IV) Mesh GenerationMeshing of Surfaces

Surface S = f−1(0) where f : Rn→R (n = 1,2,3)

Wants a triangulated surface S that is isotopic to S

“Tangled Cube” “Chair”

Case n = 1 is root isolation !

Return to meshing in Lecture 2

Applications

Visualization, Graphics, Simulation, Modeling: prerequisite

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 22 / 113

Page 134: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(IV) Mesh GenerationMeshing of Surfaces

Surface S = f−1(0) where f : Rn→R (n = 1,2,3)

Wants a triangulated surface S that is isotopic to S

“Tangled Cube” “Chair”

Case n = 1 is root isolation !

Return to meshing in Lecture 2

Applications

Visualization, Graphics, Simulation, Modeling: prerequisite

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 22 / 113

Page 135: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(IV) Mesh GenerationMeshing of Surfaces

Surface S = f−1(0) where f : Rn→R (n = 1,2,3)

Wants a triangulated surface S that is isotopic to S

“Tangled Cube” “Chair”

Case n = 1 is root isolation !

Return to meshing in Lecture 2

Applications

Visualization, Graphics, Simulation, Modeling: prerequisite

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 22 / 113

Page 136: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(IV) Mesh GenerationMeshing of Surfaces

Surface S = f−1(0) where f : Rn→R (n = 1,2,3)

Wants a triangulated surface S that is isotopic to S

“Tangled Cube” “Chair”

Case n = 1 is root isolation !

Return to meshing in Lecture 2

Applications

Visualization, Graphics, Simulation, Modeling: prerequisite

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 22 / 113

Page 137: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(IV) Mesh GenerationMeshing of Surfaces

Surface S = f−1(0) where f : Rn→R (n = 1,2,3)

Wants a triangulated surface S that is isotopic to S

“Tangled Cube” “Chair”

Case n = 1 is root isolation !

Return to meshing in Lecture 2

Applications

Visualization, Graphics, Simulation, Modeling: prerequisite

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 22 / 113

Page 138: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(IV) Mesh GenerationMeshing of Surfaces

Surface S = f−1(0) where f : Rn→R (n = 1,2,3)

Wants a triangulated surface S that is isotopic to S

“Tangled Cube” “Chair”

Case n = 1 is root isolation !

Return to meshing in Lecture 2

Applications

Visualization, Graphics, Simulation, Modeling: prerequisite

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 22 / 113

Page 139: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(IV) Mesh GenerationMeshing of Surfaces

Surface S = f−1(0) where f : Rn→R (n = 1,2,3)

Wants a triangulated surface S that is isotopic to S

“Tangled Cube” “Chair”

Case n = 1 is root isolation !

Return to meshing in Lecture 2

Applications

Visualization, Graphics, Simulation, Modeling: prerequisite

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 22 / 113

Page 140: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(V) Discrete Morse Theory

Edelsbrunner, Harer, Zomorodian (2003)

Methodology: discrete analogues of continuous concepts

Differential geometry, Ricci flows, etc

Morse-Smale Complex of a surface S = f−1(0):

Critical Points (max/min/saddle)

Integral Lines

OPEN: How to connect saddle to itsmaximas

Exactness Bottleneck: this “Continuous-to-Discrete” transformation

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 23 / 113

Page 141: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(V) Discrete Morse Theory

Edelsbrunner, Harer, Zomorodian (2003)

Methodology: discrete analogues of continuous concepts

Differential geometry, Ricci flows, etc

Morse-Smale Complex of a surface S = f−1(0):

Critical Points (max/min/saddle)

Integral Lines

OPEN: How to connect saddle to itsmaximas

Exactness Bottleneck: this “Continuous-to-Discrete” transformation

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 23 / 113

Page 142: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(V) Discrete Morse Theory

Edelsbrunner, Harer, Zomorodian (2003)

Methodology: discrete analogues of continuous concepts

Differential geometry, Ricci flows, etc

Morse-Smale Complex of a surface S = f−1(0):

Critical Points (max/min/saddle)

Integral Lines

OPEN: How to connect saddle to itsmaximas

Exactness Bottleneck: this “Continuous-to-Discrete” transformation

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 23 / 113

Page 143: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(V) Discrete Morse Theory

Edelsbrunner, Harer, Zomorodian (2003)

Methodology: discrete analogues of continuous concepts

Differential geometry, Ricci flows, etc

Morse-Smale Complex of a surface S = f−1(0):

Critical Points (max/min/saddle)

Integral Lines

OPEN: How to connect saddle to itsmaximas

Exactness Bottleneck: this “Continuous-to-Discrete” transformation

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 23 / 113

Page 144: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(V) Discrete Morse Theory

Edelsbrunner, Harer, Zomorodian (2003)

Methodology: discrete analogues of continuous concepts

Differential geometry, Ricci flows, etc

Morse-Smale Complex of a surface S = f−1(0):

Critical Points (max/min/saddle)

Integral Lines

OPEN: How to connect saddle to itsmaximas

Exactness Bottleneck: this “Continuous-to-Discrete” transformation

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 23 / 113

Page 145: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(V) Discrete Morse Theory

Edelsbrunner, Harer, Zomorodian (2003)

Methodology: discrete analogues of continuous concepts

Differential geometry, Ricci flows, etc

Morse-Smale Complex of a surface S = f−1(0):

Critical Points (max/min/saddle)

Integral Lines

OPEN: How to connect saddle to itsmaximas

Exactness Bottleneck: this “Continuous-to-Discrete” transformation

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 23 / 113

Page 146: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(V) Discrete Morse Theory

Edelsbrunner, Harer, Zomorodian (2003)

Methodology: discrete analogues of continuous concepts

Differential geometry, Ricci flows, etc

Morse-Smale Complex of a surface S = f−1(0):

Critical Points (max/min/saddle)

Integral Lines

OPEN: How to connect saddle to itsmaximas

Exactness Bottleneck: this “Continuous-to-Discrete” transformation

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 23 / 113

Page 147: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(V) Discrete Morse Theory

Edelsbrunner, Harer, Zomorodian (2003)

Methodology: discrete analogues of continuous concepts

Differential geometry, Ricci flows, etc

Morse-Smale Complex of a surface S = f−1(0):

Critical Points (max/min/saddle)

Integral Lines

OPEN: How to connect saddle to itsmaximas

Exactness Bottleneck: this “Continuous-to-Discrete” transformation

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 23 / 113

Page 148: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(V) Discrete Morse Theory

Edelsbrunner, Harer, Zomorodian (2003)

Methodology: discrete analogues of continuous concepts

Differential geometry, Ricci flows, etc

Morse-Smale Complex of a surface S = f−1(0):

Critical Points (max/min/saddle)

Integral Lines

OPEN: How to connect saddle to itsmaximas

Exactness Bottleneck: this “Continuous-to-Discrete” transformation

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 23 / 113

Page 149: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(V) Discrete Morse Theory

Edelsbrunner, Harer, Zomorodian (2003)

Methodology: discrete analogues of continuous concepts

Differential geometry, Ricci flows, etc

Morse-Smale Complex of a surface S = f−1(0):

Critical Points (max/min/saddle)

Integral Lines

OPEN: How to connect saddle to itsmaximas

Exactness Bottleneck: this “Continuous-to-Discrete” transformation

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 23 / 113

Page 150: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(V) Discrete Morse Theory

Edelsbrunner, Harer, Zomorodian (2003)

Methodology: discrete analogues of continuous concepts

Differential geometry, Ricci flows, etc

Morse-Smale Complex of a surface S = f−1(0):

Critical Points (max/min/saddle)

Integral Lines

OPEN: How to connect saddle to itsmaximas

Exactness Bottleneck: this “Continuous-to-Discrete” transformation

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 23 / 113

Page 151: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Five Examples of Geometric Computation

(V) Discrete Morse Theory

Edelsbrunner, Harer, Zomorodian (2003)

Methodology: discrete analogues of continuous concepts

Differential geometry, Ricci flows, etc

Morse-Smale Complex of a surface S = f−1(0):

Critical Points (max/min/saddle)

Integral Lines

OPEN: How to connect saddle to itsmaximas

Exactness Bottleneck: this “Continuous-to-Discrete” transformation

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 23 / 113

Page 152: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

We saw 5 Geometric Problems:I=classic, II=hard, III=very hard, IV=current, V=open

Up Next : Let us examine their underlying computationalmodels...

Page 153: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

We saw 5 Geometric Problems:I=classic, II=hard, III=very hard, IV=current, V=open

Up Next : Let us examine their underlying computationalmodels...

Page 154: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

We saw 5 Geometric Problems:I=classic, II=hard, III=very hard, IV=current, V=open

Up Next : Let us examine their underlying computationalmodels...

Page 155: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

We saw 5 Geometric Problems:I=classic, II=hard, III=very hard, IV=current, V=open

Up Next : Let us examine their underlying computationalmodels...

Page 156: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Coming Up Next

1 Introduction: What is Geometric Computation?

2 Five Examples of Geometric Computation

3 Exact Numeric Computation – A Synthesis

4 Exact Geometric Computation

5 Constructive Zero Bounds

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 25 / 113

Page 157: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Two Worlds of Computing

(EX) Discrete, Combinatorial, Exact .

Theoretical Computer Science, Computer Algebra

(AP) Continuous, Numerical, Approximate. Computational Science & Engineering (CS&E) or Physics Problems too hard in exact framework (e.g., 3D Ising Model) Even when exact solution is possible,...

The 2 Worlds meet in Geometry Solving Linear Systems (Gaussian vs. Gauss-Seidel)

Linear Programming (Simplex vs. Interior-Point)

Solving Numerical PDE (Symbolic vs. Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 26 / 113

Page 158: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Two Worlds of Computing

(EX) Discrete, Combinatorial, Exact .

Theoretical Computer Science, Computer Algebra

(AP) Continuous, Numerical, Approximate. Computational Science & Engineering (CS&E) or Physics Problems too hard in exact framework (e.g., 3D Ising Model) Even when exact solution is possible,...

The 2 Worlds meet in Geometry Solving Linear Systems (Gaussian vs. Gauss-Seidel)

Linear Programming (Simplex vs. Interior-Point)

Solving Numerical PDE (Symbolic vs. Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 26 / 113

Page 159: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Two Worlds of Computing

(EX) Discrete, Combinatorial, Exact .

Theoretical Computer Science, Computer Algebra

(AP) Continuous, Numerical, Approximate. Computational Science & Engineering (CS&E) or Physics Problems too hard in exact framework (e.g., 3D Ising Model) Even when exact solution is possible,...

The 2 Worlds meet in Geometry Solving Linear Systems (Gaussian vs. Gauss-Seidel)

Linear Programming (Simplex vs. Interior-Point)

Solving Numerical PDE (Symbolic vs. Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 26 / 113

Page 160: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Two Worlds of Computing

(EX) Discrete, Combinatorial, Exact .

Theoretical Computer Science, Computer Algebra

(AP) Continuous, Numerical, Approximate. Computational Science & Engineering (CS&E) or Physics Problems too hard in exact framework (e.g., 3D Ising Model) Even when exact solution is possible,...

The 2 Worlds meet in Geometry Solving Linear Systems (Gaussian vs. Gauss-Seidel)

Linear Programming (Simplex vs. Interior-Point)

Solving Numerical PDE (Symbolic vs. Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 26 / 113

Page 161: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Two Worlds of Computing

(EX) Discrete, Combinatorial, Exact .

Theoretical Computer Science, Computer Algebra

(AP) Continuous, Numerical, Approximate. Computational Science & Engineering (CS&E) or Physics Problems too hard in exact framework (e.g., 3D Ising Model) Even when exact solution is possible,...

The 2 Worlds meet in Geometry Solving Linear Systems (Gaussian vs. Gauss-Seidel)

Linear Programming (Simplex vs. Interior-Point)

Solving Numerical PDE (Symbolic vs. Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 26 / 113

Page 162: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Two Worlds of Computing

(EX) Discrete, Combinatorial, Exact .

Theoretical Computer Science, Computer Algebra

(AP) Continuous, Numerical, Approximate. Computational Science & Engineering (CS&E) or Physics Problems too hard in exact framework (e.g., 3D Ising Model) Even when exact solution is possible,...

The 2 Worlds meet in Geometry Solving Linear Systems (Gaussian vs. Gauss-Seidel)

Linear Programming (Simplex vs. Interior-Point)

Solving Numerical PDE (Symbolic vs. Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 26 / 113

Page 163: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Two Worlds of Computing

(EX) Discrete, Combinatorial, Exact .

Theoretical Computer Science, Computer Algebra

(AP) Continuous, Numerical, Approximate. Computational Science & Engineering (CS&E) or Physics Problems too hard in exact framework (e.g., 3D Ising Model) Even when exact solution is possible,...

The 2 Worlds meet in Geometry Solving Linear Systems (Gaussian vs. Gauss-Seidel)

Linear Programming (Simplex vs. Interior-Point)

Solving Numerical PDE (Symbolic vs. Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 26 / 113

Page 164: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Two Worlds of Computing

(EX) Discrete, Combinatorial, Exact .

Theoretical Computer Science, Computer Algebra

(AP) Continuous, Numerical, Approximate. Computational Science & Engineering (CS&E) or Physics Problems too hard in exact framework (e.g., 3D Ising Model) Even when exact solution is possible,...

The 2 Worlds meet in Geometry Solving Linear Systems (Gaussian vs. Gauss-Seidel)

Linear Programming (Simplex vs. Interior-Point)

Solving Numerical PDE (Symbolic vs. Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 26 / 113

Page 165: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Two Worlds of Computing

(EX) Discrete, Combinatorial, Exact .

Theoretical Computer Science, Computer Algebra

(AP) Continuous, Numerical, Approximate. Computational Science & Engineering (CS&E) or Physics Problems too hard in exact framework (e.g., 3D Ising Model) Even when exact solution is possible,...

The 2 Worlds meet in Geometry Solving Linear Systems (Gaussian vs. Gauss-Seidel)

Linear Programming (Simplex vs. Interior-Point)

Solving Numerical PDE (Symbolic vs. Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 26 / 113

Page 166: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Two Worlds of Computing

(EX) Discrete, Combinatorial, Exact .

Theoretical Computer Science, Computer Algebra

(AP) Continuous, Numerical, Approximate. Computational Science & Engineering (CS&E) or Physics Problems too hard in exact framework (e.g., 3D Ising Model) Even when exact solution is possible,...

The 2 Worlds meet in Geometry Solving Linear Systems (Gaussian vs. Gauss-Seidel)

Linear Programming (Simplex vs. Interior-Point)

Solving Numerical PDE (Symbolic vs. Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 26 / 113

Page 167: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Two Worlds of Computing

(EX) Discrete, Combinatorial, Exact .

Theoretical Computer Science, Computer Algebra

(AP) Continuous, Numerical, Approximate. Computational Science & Engineering (CS&E) or Physics Problems too hard in exact framework (e.g., 3D Ising Model) Even when exact solution is possible,...

The 2 Worlds meet in Geometry Solving Linear Systems (Gaussian vs. Gauss-Seidel)

Linear Programming (Simplex vs. Interior-Point)

Solving Numerical PDE (Symbolic vs. Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 26 / 113

Page 168: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Two Worlds of Computing

(EX) Discrete, Combinatorial, Exact .

Theoretical Computer Science, Computer Algebra

(AP) Continuous, Numerical, Approximate. Computational Science & Engineering (CS&E) or Physics Problems too hard in exact framework (e.g., 3D Ising Model) Even when exact solution is possible,...

The 2 Worlds meet in Geometry Solving Linear Systems (Gaussian vs. Gauss-Seidel)

Linear Programming (Simplex vs. Interior-Point)

Solving Numerical PDE (Symbolic vs. Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 26 / 113

Page 169: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Again, What is Geometry?

Geometry is always about zeros

Problem (I): Is a Point on a Hyperplane?

Problems (II),(III): Are two path lengths are equal?

Problems (IV),(V): Continuous-to-discrete transformations,defined by zero sets

These zero decisions are captured by geometric predicates

View developed by CG’ers in robust geometric computation

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 27 / 113

Page 170: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Again, What is Geometry?

Geometry is always about zeros

Problem (I): Is a Point on a Hyperplane?

Problems (II),(III): Are two path lengths are equal?

Problems (IV),(V): Continuous-to-discrete transformations,defined by zero sets

These zero decisions are captured by geometric predicates

View developed by CG’ers in robust geometric computation

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 27 / 113

Page 171: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Again, What is Geometry?

Geometry is always about zeros

Problem (I): Is a Point on a Hyperplane?

Problems (II),(III): Are two path lengths are equal?

Problems (IV),(V): Continuous-to-discrete transformations,defined by zero sets

These zero decisions are captured by geometric predicates

View developed by CG’ers in robust geometric computation

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 27 / 113

Page 172: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Again, What is Geometry?

Geometry is always about zeros

Problem (I): Is a Point on a Hyperplane?

Problems (II),(III): Are two path lengths are equal?

Problems (IV),(V): Continuous-to-discrete transformations,defined by zero sets

These zero decisions are captured by geometric predicates

View developed by CG’ers in robust geometric computation

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 27 / 113

Page 173: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Again, What is Geometry?

Geometry is always about zeros

Problem (I): Is a Point on a Hyperplane?

Problems (II),(III): Are two path lengths are equal?

Problems (IV),(V): Continuous-to-discrete transformations,defined by zero sets

These zero decisions are captured by geometric predicates

View developed by CG’ers in robust geometric computation

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 27 / 113

Page 174: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Again, What is Geometry?

Geometry is always about zeros

Problem (I): Is a Point on a Hyperplane?

Problems (II),(III): Are two path lengths are equal?

Problems (IV),(V): Continuous-to-discrete transformations,defined by zero sets

These zero decisions are captured by geometric predicates

View developed by CG’ers in robust geometric computation

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 27 / 113

Page 175: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Again, What is Geometry?

Geometry is always about zeros

Problem (I): Is a Point on a Hyperplane?

Problems (II),(III): Are two path lengths are equal?

Problems (IV),(V): Continuous-to-discrete transformations,defined by zero sets

These zero decisions are captured by geometric predicates

View developed by CG’ers in robust geometric computation

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 27 / 113

Page 176: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Four Computational Models for Geometry

How to compute in a Continuum (Rn)?

(EX) Algebraic Computational Model(e.g., Real RAM, Blum-Shub-Smale model, Disc Shortest Path)

PROBLEM: Zero is trivial

(EX’) Abstract Operational Models(e.g., CG, Traub, Orientation, Ray shooting, Giftwrap)

PROBLEM: Zero is hidden

(AP) Analytic Computational Model (e.g., Ko, Weihrauch)

PROBLEM: Zero is undecidable

(AP’) Numerical Analysis Model (e.g., x⊕ y = (x + y)(1+ ε))

PROBLEM: Zero is abolished

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 28 / 113

Page 177: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Four Computational Models for Geometry

How to compute in a Continuum (Rn)?

(EX) Algebraic Computational Model(e.g., Real RAM, Blum-Shub-Smale model, Disc Shortest Path)

PROBLEM: Zero is trivial

(EX’) Abstract Operational Models(e.g., CG, Traub, Orientation, Ray shooting, Giftwrap)

PROBLEM: Zero is hidden

(AP) Analytic Computational Model (e.g., Ko, Weihrauch)

PROBLEM: Zero is undecidable

(AP’) Numerical Analysis Model (e.g., x⊕ y = (x + y)(1+ ε))

PROBLEM: Zero is abolished

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 28 / 113

Page 178: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Four Computational Models for Geometry

How to compute in a Continuum (Rn)?

(EX) Algebraic Computational Model(e.g., Real RAM, Blum-Shub-Smale model, Disc Shortest Path)

PROBLEM: Zero is trivial

(EX’) Abstract Operational Models(e.g., CG, Traub, Orientation, Ray shooting, Giftwrap)

PROBLEM: Zero is hidden

(AP) Analytic Computational Model (e.g., Ko, Weihrauch)

PROBLEM: Zero is undecidable

(AP’) Numerical Analysis Model (e.g., x⊕ y = (x + y)(1+ ε))

PROBLEM: Zero is abolished

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 28 / 113

Page 179: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Four Computational Models for Geometry

How to compute in a Continuum (Rn)?

(EX) Algebraic Computational Model(e.g., Real RAM, Blum-Shub-Smale model, Disc Shortest Path)

PROBLEM: Zero is trivial

(EX’) Abstract Operational Models(e.g., CG, Traub, Orientation, Ray shooting, Giftwrap)

PROBLEM: Zero is hidden

(AP) Analytic Computational Model (e.g., Ko, Weihrauch)

PROBLEM: Zero is undecidable

(AP’) Numerical Analysis Model (e.g., x⊕ y = (x + y)(1+ ε))

PROBLEM: Zero is abolished

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 28 / 113

Page 180: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Four Computational Models for Geometry

How to compute in a Continuum (Rn)?

(EX) Algebraic Computational Model(e.g., Real RAM, Blum-Shub-Smale model, Disc Shortest Path)

PROBLEM: Zero is trivial

(EX’) Abstract Operational Models(e.g., CG, Traub, Orientation, Ray shooting, Giftwrap)

PROBLEM: Zero is hidden

(AP) Analytic Computational Model (e.g., Ko, Weihrauch)

PROBLEM: Zero is undecidable

(AP’) Numerical Analysis Model (e.g., x⊕ y = (x + y)(1+ ε))

PROBLEM: Zero is abolished

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 28 / 113

Page 181: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Four Computational Models for Geometry

How to compute in a Continuum (Rn)?

(EX) Algebraic Computational Model(e.g., Real RAM, Blum-Shub-Smale model, Disc Shortest Path)

PROBLEM: Zero is trivial

(EX’) Abstract Operational Models(e.g., CG, Traub, Orientation, Ray shooting, Giftwrap)

PROBLEM: Zero is hidden

(AP) Analytic Computational Model (e.g., Ko, Weihrauch)

PROBLEM: Zero is undecidable

(AP’) Numerical Analysis Model (e.g., x⊕ y = (x + y)(1+ ε))

PROBLEM: Zero is abolished

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 28 / 113

Page 182: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Four Computational Models for Geometry

How to compute in a Continuum (Rn)?

(EX) Algebraic Computational Model(e.g., Real RAM, Blum-Shub-Smale model, Disc Shortest Path)

PROBLEM: Zero is trivial

(EX’) Abstract Operational Models(e.g., CG, Traub, Orientation, Ray shooting, Giftwrap)

PROBLEM: Zero is hidden

(AP) Analytic Computational Model (e.g., Ko, Weihrauch)

PROBLEM: Zero is undecidable

(AP’) Numerical Analysis Model (e.g., x⊕ y = (x + y)(1+ ε))

PROBLEM: Zero is abolished

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 28 / 113

Page 183: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Four Computational Models for Geometry

How to compute in a Continuum (Rn)?

(EX) Algebraic Computational Model(e.g., Real RAM, Blum-Shub-Smale model, Disc Shortest Path)

PROBLEM: Zero is trivial

(EX’) Abstract Operational Models(e.g., CG, Traub, Orientation, Ray shooting, Giftwrap)

PROBLEM: Zero is hidden

(AP) Analytic Computational Model (e.g., Ko, Weihrauch)

PROBLEM: Zero is undecidable

(AP’) Numerical Analysis Model (e.g., x⊕ y = (x + y)(1+ ε))

PROBLEM: Zero is abolished

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 28 / 113

Page 184: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Four Computational Models for Geometry

How to compute in a Continuum (Rn)?

(EX) Algebraic Computational Model(e.g., Real RAM, Blum-Shub-Smale model, Disc Shortest Path)

PROBLEM: Zero is trivial

(EX’) Abstract Operational Models(e.g., CG, Traub, Orientation, Ray shooting, Giftwrap)

PROBLEM: Zero is hidden

(AP) Analytic Computational Model (e.g., Ko, Weihrauch)

PROBLEM: Zero is undecidable

(AP’) Numerical Analysis Model (e.g., x⊕ y = (x + y)(1+ ε))

PROBLEM: Zero is abolished

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 28 / 113

Page 185: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Four Computational Models for Geometry

How to compute in a Continuum (Rn)?

(EX) Algebraic Computational Model(e.g., Real RAM, Blum-Shub-Smale model, Disc Shortest Path)

PROBLEM: Zero is trivial

(EX’) Abstract Operational Models(e.g., CG, Traub, Orientation, Ray shooting, Giftwrap)

PROBLEM: Zero is hidden

(AP) Analytic Computational Model (e.g., Ko, Weihrauch)

PROBLEM: Zero is undecidable

(AP’) Numerical Analysis Model (e.g., x⊕ y = (x + y)(1+ ε))

PROBLEM: Zero is abolished

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 28 / 113

Page 186: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Other Issues

You cannot avoid the Zero Problem(EX) How do you implement R?

(EX’) We may abstract away too much cf. Problems (II) and (III)

(AP) Only continuous functions are computable Geometry is a discontinuous phenomenon

(AP’) Approximate geometry maybe harder than exact geometry Exercise: Program a geometric algorithm w/o equality test

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 29 / 113

Page 187: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Other Issues

You cannot avoid the Zero Problem(EX) How do you implement R?

(EX’) We may abstract away too much cf. Problems (II) and (III)

(AP) Only continuous functions are computable Geometry is a discontinuous phenomenon

(AP’) Approximate geometry maybe harder than exact geometry Exercise: Program a geometric algorithm w/o equality test

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 29 / 113

Page 188: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Other Issues

You cannot avoid the Zero Problem(EX) How do you implement R?

(EX’) We may abstract away too much cf. Problems (II) and (III)

(AP) Only continuous functions are computable Geometry is a discontinuous phenomenon

(AP’) Approximate geometry maybe harder than exact geometry Exercise: Program a geometric algorithm w/o equality test

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 29 / 113

Page 189: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Other Issues

You cannot avoid the Zero Problem(EX) How do you implement R?

(EX’) We may abstract away too much cf. Problems (II) and (III)

(AP) Only continuous functions are computable Geometry is a discontinuous phenomenon

(AP’) Approximate geometry maybe harder than exact geometry Exercise: Program a geometric algorithm w/o equality test

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 29 / 113

Page 190: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Other Issues

You cannot avoid the Zero Problem(EX) How do you implement R?

(EX’) We may abstract away too much cf. Problems (II) and (III)

(AP) Only continuous functions are computable Geometry is a discontinuous phenomenon

(AP’) Approximate geometry maybe harder than exact geometry Exercise: Program a geometric algorithm w/o equality test

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 29 / 113

Page 191: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Other Issues

You cannot avoid the Zero Problem(EX) How do you implement R?

(EX’) We may abstract away too much cf. Problems (II) and (III)

(AP) Only continuous functions are computable Geometry is a discontinuous phenomenon

(AP’) Approximate geometry maybe harder than exact geometry Exercise: Program a geometric algorithm w/o equality test

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 29 / 113

Page 192: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Other Issues

You cannot avoid the Zero Problem(EX) How do you implement R?

(EX’) We may abstract away too much cf. Problems (II) and (III)

(AP) Only continuous functions are computable Geometry is a discontinuous phenomenon

(AP’) Approximate geometry maybe harder than exact geometry Exercise: Program a geometric algorithm w/o equality test

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 29 / 113

Page 193: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Other Issues

You cannot avoid the Zero Problem(EX) How do you implement R?

(EX’) We may abstract away too much cf. Problems (II) and (III)

(AP) Only continuous functions are computable Geometry is a discontinuous phenomenon

(AP’) Approximate geometry maybe harder than exact geometry Exercise: Program a geometric algorithm w/o equality test

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 29 / 113

Page 194: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Other Issues

You cannot avoid the Zero Problem(EX) How do you implement R?

(EX’) We may abstract away too much cf. Problems (II) and (III)

(AP) Only continuous functions are computable Geometry is a discontinuous phenomenon

(AP’) Approximate geometry maybe harder than exact geometry Exercise: Program a geometric algorithm w/o equality test

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 29 / 113

Page 195: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Duality in Numbers

Physics Analogy:

Discrete Continuous

Light particle waveR field metric spaceNumbers algebraic analytic

α =√

15−√

224 ≈ 0.0223√

15−√

224 is exact, but 0.0223 is more useful! WHY? Want the locus of α in the continuum JOKE: a physicist and an engineer were in a hot-air balloon...

How to capture this Duality? For exact computation, need algebraic representation. For analytic properties, need an approximation process What about deciding zero? (Algebraic or Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 30 / 113

Page 196: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Duality in Numbers

Physics Analogy:

Discrete Continuous

Light particle waveR field metric spaceNumbers algebraic analytic

α =√

15−√

224 ≈ 0.0223√

15−√

224 is exact, but 0.0223 is more useful! WHY? Want the locus of α in the continuum JOKE: a physicist and an engineer were in a hot-air balloon...

How to capture this Duality? For exact computation, need algebraic representation. For analytic properties, need an approximation process What about deciding zero? (Algebraic or Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 30 / 113

Page 197: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Duality in Numbers

Physics Analogy:

Discrete Continuous

Light particle waveR field metric spaceNumbers algebraic analytic

α =√

15−√

224 ≈ 0.0223√

15−√

224 is exact, but 0.0223 is more useful! WHY? Want the locus of α in the continuum JOKE: a physicist and an engineer were in a hot-air balloon...

How to capture this Duality? For exact computation, need algebraic representation. For analytic properties, need an approximation process What about deciding zero? (Algebraic or Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 30 / 113

Page 198: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Duality in Numbers

Physics Analogy:

Discrete Continuous

Light particle waveR field metric spaceNumbers algebraic analytic

α =√

15−√

224 ≈ 0.0223√

15−√

224 is exact, but 0.0223 is more useful! WHY? Want the locus of α in the continuum JOKE: a physicist and an engineer were in a hot-air balloon...

How to capture this Duality? For exact computation, need algebraic representation. For analytic properties, need an approximation process What about deciding zero? (Algebraic or Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 30 / 113

Page 199: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Duality in Numbers

Physics Analogy:

Discrete Continuous

Light particle waveR field metric spaceNumbers algebraic analytic

α =√

15−√

224 ≈ 0.0223√

15−√

224 is exact, but 0.0223 is more useful! WHY? Want the locus of α in the continuum JOKE: a physicist and an engineer were in a hot-air balloon...

How to capture this Duality? For exact computation, need algebraic representation. For analytic properties, need an approximation process What about deciding zero? (Algebraic or Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 30 / 113

Page 200: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Duality in Numbers

Physics Analogy:

Discrete Continuous

Light particle waveR field metric spaceNumbers algebraic analytic

α =√

15−√

224 ≈ 0.0223√

15−√

224 is exact, but 0.0223 is more useful! WHY? Want the locus of α in the continuum JOKE: a physicist and an engineer were in a hot-air balloon...

How to capture this Duality? For exact computation, need algebraic representation. For analytic properties, need an approximation process What about deciding zero? (Algebraic or Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 30 / 113

Page 201: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Duality in Numbers

Physics Analogy:

Discrete Continuous

Light particle waveR field metric spaceNumbers algebraic analytic

α =√

15−√

224 ≈ 0.0223√

15−√

224 is exact, but 0.0223 is more useful! WHY? Want the locus of α in the continuum JOKE: a physicist and an engineer were in a hot-air balloon...

How to capture this Duality? For exact computation, need algebraic representation. For analytic properties, need an approximation process What about deciding zero? (Algebraic or Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 30 / 113

Page 202: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Duality in Numbers

Physics Analogy:

Discrete Continuous

Light particle waveR field metric spaceNumbers algebraic analytic

α =√

15−√

224 ≈ 0.0223√

15−√

224 is exact, but 0.0223 is more useful! WHY? Want the locus of α in the continuum JOKE: a physicist and an engineer were in a hot-air balloon...

How to capture this Duality? For exact computation, need algebraic representation. For analytic properties, need an approximation process What about deciding zero? (Algebraic or Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 30 / 113

Page 203: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Duality in Numbers

Physics Analogy:

Discrete Continuous

Light particle waveR field metric spaceNumbers algebraic analytic

α =√

15−√

224 ≈ 0.0223√

15−√

224 is exact, but 0.0223 is more useful! WHY? Want the locus of α in the continuum JOKE: a physicist and an engineer were in a hot-air balloon...

How to capture this Duality? For exact computation, need algebraic representation. For analytic properties, need an approximation process What about deciding zero? (Algebraic or Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 30 / 113

Page 204: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Duality in Numbers

Physics Analogy:

Discrete Continuous

Light particle waveR field metric spaceNumbers algebraic analytic

α =√

15−√

224 ≈ 0.0223√

15−√

224 is exact, but 0.0223 is more useful! WHY? Want the locus of α in the continuum JOKE: a physicist and an engineer were in a hot-air balloon...

How to capture this Duality? For exact computation, need algebraic representation. For analytic properties, need an approximation process What about deciding zero? (Algebraic or Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 30 / 113

Page 205: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Duality in Numbers

Physics Analogy:

Discrete Continuous

Light particle waveR field metric spaceNumbers algebraic analytic

α =√

15−√

224 ≈ 0.0223√

15−√

224 is exact, but 0.0223 is more useful! WHY? Want the locus of α in the continuum JOKE: a physicist and an engineer were in a hot-air balloon...

How to capture this Duality? For exact computation, need algebraic representation. For analytic properties, need an approximation process What about deciding zero? (Algebraic or Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 30 / 113

Page 206: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Duality in Numbers

Physics Analogy:

Discrete Continuous

Light particle waveR field metric spaceNumbers algebraic analytic

α =√

15−√

224 ≈ 0.0223√

15−√

224 is exact, but 0.0223 is more useful! WHY? Want the locus of α in the continuum JOKE: a physicist and an engineer were in a hot-air balloon...

How to capture this Duality? For exact computation, need algebraic representation. For analytic properties, need an approximation process What about deciding zero? (Algebraic or Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 30 / 113

Page 207: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Duality in Numbers

Physics Analogy:

Discrete Continuous

Light particle waveR field metric spaceNumbers algebraic analytic

α =√

15−√

224 ≈ 0.0223√

15−√

224 is exact, but 0.0223 is more useful! WHY? Want the locus of α in the continuum JOKE: a physicist and an engineer were in a hot-air balloon...

How to capture this Duality? For exact computation, need algebraic representation. For analytic properties, need an approximation process What about deciding zero? (Algebraic or Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 30 / 113

Page 208: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

ENC

Duality in Numbers

Physics Analogy:

Discrete Continuous

Light particle waveR field metric spaceNumbers algebraic analytic

α =√

15−√

224 ≈ 0.0223√

15−√

224 is exact, but 0.0223 is more useful! WHY? Want the locus of α in the continuum JOKE: a physicist and an engineer were in a hot-air balloon...

How to capture this Duality? For exact computation, need algebraic representation. For analytic properties, need an approximation process What about deciding zero? (Algebraic or Numeric)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 30 / 113

Page 209: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Geometry is decided by Zeros

Zero is a special number

Numbers have a dual nature: need dual representation

Up Next : A General Solution

Page 210: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Geometry is decided by Zeros

Zero is a special number

Numbers have a dual nature: need dual representation

Up Next : A General Solution

Page 211: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Geometry is decided by Zeros

Zero is a special number

Numbers have a dual nature: need dual representation

Up Next : A General Solution

Page 212: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Geometry is decided by Zeros

Zero is a special number

Numbers have a dual nature: need dual representation

Up Next : A General Solution

Page 213: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Geometry is decided by Zeros

Zero is a special number

Numbers have a dual nature: need dual representation

Up Next : A General Solution

Page 214: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Geometry is decided by Zeros

Zero is a special number

Numbers have a dual nature: need dual representation

Up Next : A General Solution

Page 215: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

Coming Up Next

1 Introduction: What is Geometric Computation?

2 Five Examples of Geometric Computation

3 Exact Numeric Computation – A Synthesis

4 Exact Geometric Computation

5 Constructive Zero Bounds

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 32 / 113

Page 216: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

The Universal Solution (EGC)

Key Principle of Exact Geometric Computation (EGC)Algorithm = Sequence of Steps

Steps = Construction x := y +2; or Tests if x = 0 goto L

Geometric relations determined by Tests (Zero or Sign)

THUS: if Tests are error free , the Geometry is exact

Numerical robustness follows! Take-home message

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 33 / 113

Page 217: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

The Universal Solution (EGC)

Key Principle of Exact Geometric Computation (EGC)Algorithm = Sequence of Steps

Steps = Construction x := y +2; or Tests if x = 0 goto L

Geometric relations determined by Tests (Zero or Sign)

THUS: if Tests are error free , the Geometry is exact

Numerical robustness follows! Take-home message

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 33 / 113

Page 218: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

The Universal Solution (EGC)

Key Principle of Exact Geometric Computation (EGC)Algorithm = Sequence of Steps

Steps = Construction x := y +2; or Tests if x = 0 goto L

Geometric relations determined by Tests (Zero or Sign)

THUS: if Tests are error free , the Geometry is exact

Numerical robustness follows! Take-home message

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 33 / 113

Page 219: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

The Universal Solution (EGC)

Key Principle of Exact Geometric Computation (EGC)Algorithm = Sequence of Steps

Steps = Construction x := y +2; or Tests if x = 0 goto L

Geometric relations determined by Tests (Zero or Sign)

THUS: if Tests are error free , the Geometry is exact

Numerical robustness follows! Take-home message

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 33 / 113

Page 220: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

The Universal Solution (EGC)

Key Principle of Exact Geometric Computation (EGC)Algorithm = Sequence of Steps

Steps = Construction x := y +2; or Tests if x = 0 goto L

Geometric relations determined by Tests (Zero or Sign)

THUS: if Tests are error free , the Geometry is exact

Numerical robustness follows! Take-home message

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 33 / 113

Page 221: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

The Universal Solution (EGC)

Key Principle of Exact Geometric Computation (EGC)Algorithm = Sequence of Steps

Steps = Construction x := y +2; or Tests if x = 0 goto L

Geometric relations determined by Tests (Zero or Sign)

THUS: if Tests are error free , the Geometry is exact

Numerical robustness follows! Take-home message

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 33 / 113

Page 222: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

The Universal Solution (EGC)

Key Principle of Exact Geometric Computation (EGC)Algorithm = Sequence of Steps

Steps = Construction x := y +2; or Tests if x = 0 goto L

Geometric relations determined by Tests (Zero or Sign)

THUS: if Tests are error free , the Geometry is exact

Numerical robustness follows! Take-home message

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 33 / 113

Page 223: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

Implementing the Universal Solution (CoreLibrary)Any programmer can access this capability

#define Core Level 3

#include ”CORE.h”

.... Standard C++ Program ....

Numerical Accuracy API

Level 1: Machine Accuracy (int, long, float, double)

Level 2: Arbitrary Accuracy (BigInt, BigRat, BigFloat)

Level 3: Guaranteed Accuracy (Expr)

Program should compile at every Accuracy LevelYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 34 / 113

Page 224: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

Implementing the Universal Solution (CoreLibrary)Any programmer can access this capability

#define Core Level 3

#include ”CORE.h”

.... Standard C++ Program ....

Numerical Accuracy API

Level 1: Machine Accuracy (int, long, float, double)

Level 2: Arbitrary Accuracy (BigInt, BigRat, BigFloat)

Level 3: Guaranteed Accuracy (Expr)

Program should compile at every Accuracy LevelYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 34 / 113

Page 225: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

Implementing the Universal Solution (CoreLibrary)Any programmer can access this capability

#define Core Level 3

#include ”CORE.h”

.... Standard C++ Program ....

Numerical Accuracy API

Level 1: Machine Accuracy (int, long, float, double)

Level 2: Arbitrary Accuracy (BigInt, BigRat, BigFloat)

Level 3: Guaranteed Accuracy (Expr)

Program should compile at every Accuracy LevelYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 34 / 113

Page 226: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

Implementing the Universal Solution (CoreLibrary)Any programmer can access this capability

#define Core Level 3

#include ”CORE.h”

.... Standard C++ Program ....

Numerical Accuracy API

Level 1: Machine Accuracy (int, long, float, double)

Level 2: Arbitrary Accuracy (BigInt, BigRat, BigFloat)

Level 3: Guaranteed Accuracy (Expr)

Program should compile at every Accuracy LevelYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 34 / 113

Page 227: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

Implementing the Universal Solution (CoreLibrary)Any programmer can access this capability

#define Core Level 3

#include ”CORE.h”

.... Standard C++ Program ....

Numerical Accuracy API

Level 1: Machine Accuracy (int, long, float, double)

Level 2: Arbitrary Accuracy (BigInt, BigRat, BigFloat)

Level 3: Guaranteed Accuracy (Expr)

Program should compile at every Accuracy LevelYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 34 / 113

Page 228: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

Implementing the Universal Solution (CoreLibrary)Any programmer can access this capability

#define Core Level 3

#include ”CORE.h”

.... Standard C++ Program ....

Numerical Accuracy API

Level 1: Machine Accuracy (int, long, float, double)

Level 2: Arbitrary Accuracy (BigInt, BigRat, BigFloat)

Level 3: Guaranteed Accuracy (Expr)

Program should compile at every Accuracy LevelYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 34 / 113

Page 229: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

Implementing the Universal Solution (CoreLibrary)Any programmer can access this capability

#define Core Level 3

#include ”CORE.h”

.... Standard C++ Program ....

Numerical Accuracy API

Level 1: Machine Accuracy (int, long, float, double)

Level 2: Arbitrary Accuracy (BigInt, BigRat, BigFloat)

Level 3: Guaranteed Accuracy (Expr)

Program should compile at every Accuracy LevelYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 34 / 113

Page 230: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

Implementing the Universal Solution (CoreLibrary)Any programmer can access this capability

#define Core Level 3

#include ”CORE.h”

.... Standard C++ Program ....

Numerical Accuracy API

Level 1: Machine Accuracy (int, long, float, double)

Level 2: Arbitrary Accuracy (BigInt, BigRat, BigFloat)

Level 3: Guaranteed Accuracy (Expr)

Program should compile at every Accuracy LevelYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 34 / 113

Page 231: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

What is Achieved?

FeaturesRemoved numerical non-robustness from geometry (!)

Algorithm-independent solution to non-robustness

Standard (Euclidean) geometry (why important?)

Exactness in geometry ( can use approximate numbers !)

Implemented in LEDA , CGAL , Core Library

Other ImplicationsA new approach to do algebraic number computation

Euclidean Shortest Path need signs of expressions like∑100

i=1 ai√

bi .Standard algebraic approach is doomed

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 35 / 113

Page 232: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

What is Achieved?

FeaturesRemoved numerical non-robustness from geometry (!)

Algorithm-independent solution to non-robustness

Standard (Euclidean) geometry (why important?)

Exactness in geometry ( can use approximate numbers !)

Implemented in LEDA , CGAL , Core Library

Other ImplicationsA new approach to do algebraic number computation

Euclidean Shortest Path need signs of expressions like∑100

i=1 ai√

bi .Standard algebraic approach is doomed

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 35 / 113

Page 233: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

What is Achieved?

FeaturesRemoved numerical non-robustness from geometry (!)

Algorithm-independent solution to non-robustness

Standard (Euclidean) geometry (why important?)

Exactness in geometry ( can use approximate numbers !)

Implemented in LEDA , CGAL , Core Library

Other ImplicationsA new approach to do algebraic number computation

Euclidean Shortest Path need signs of expressions like∑100

i=1 ai√

bi .Standard algebraic approach is doomed

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 35 / 113

Page 234: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

What is Achieved?

FeaturesRemoved numerical non-robustness from geometry (!)

Algorithm-independent solution to non-robustness

Standard (Euclidean) geometry (why important?)

Exactness in geometry ( can use approximate numbers !)

Implemented in LEDA , CGAL , Core Library

Other ImplicationsA new approach to do algebraic number computation

Euclidean Shortest Path need signs of expressions like∑100

i=1 ai√

bi .Standard algebraic approach is doomed

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 35 / 113

Page 235: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

What is Achieved?

FeaturesRemoved numerical non-robustness from geometry (!)

Algorithm-independent solution to non-robustness

Standard (Euclidean) geometry (why important?)

Exactness in geometry ( can use approximate numbers !)

Implemented in LEDA , CGAL , Core Library

Other ImplicationsA new approach to do algebraic number computation

Euclidean Shortest Path need signs of expressions like∑100

i=1 ai√

bi .Standard algebraic approach is doomed

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 35 / 113

Page 236: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

What is Achieved?

FeaturesRemoved numerical non-robustness from geometry (!)

Algorithm-independent solution to non-robustness

Standard (Euclidean) geometry (why important?)

Exactness in geometry ( can use approximate numbers !)

Implemented in LEDA , CGAL , Core Library

Other ImplicationsA new approach to do algebraic number computation

Euclidean Shortest Path need signs of expressions like∑100

i=1 ai√

bi .Standard algebraic approach is doomed

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 35 / 113

Page 237: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

What is Achieved?

FeaturesRemoved numerical non-robustness from geometry (!)

Algorithm-independent solution to non-robustness

Standard (Euclidean) geometry (why important?)

Exactness in geometry ( can use approximate numbers !)

Implemented in LEDA , CGAL , Core Library

Other ImplicationsA new approach to do algebraic number computation

Euclidean Shortest Path need signs of expressions like∑100

i=1 ai√

bi .Standard algebraic approach is doomed

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 35 / 113

Page 238: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

What is Achieved?

FeaturesRemoved numerical non-robustness from geometry (!)

Algorithm-independent solution to non-robustness

Standard (Euclidean) geometry (why important?)

Exactness in geometry ( can use approximate numbers !)

Implemented in LEDA , CGAL , Core Library

Other ImplicationsA new approach to do algebraic number computation

Euclidean Shortest Path need signs of expressions like∑100

i=1 ai√

bi .Standard algebraic approach is doomed

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 35 / 113

Page 239: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

EGC

What is Achieved?

FeaturesRemoved numerical non-robustness from geometry (!)

Algorithm-independent solution to non-robustness

Standard (Euclidean) geometry (why important?)

Exactness in geometry ( can use approximate numbers !)

Implemented in LEDA , CGAL , Core Library

Other ImplicationsA new approach to do algebraic number computation

Euclidean Shortest Path need signs of expressions like∑100

i=1 ai√

bi .Standard algebraic approach is doomed

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 35 / 113

Page 240: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Zero Bounds

Coming Up Next

1 Introduction: What is Geometric Computation?

2 Five Examples of Geometric Computation

3 Exact Numeric Computation – A Synthesis

4 Exact Geometric Computation

5 Constructive Zero Bounds

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 36 / 113

Page 241: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Zero Bounds

Adaptive Zero Determination

Core of Core LibraryMust use numerical method based on Zero Bounds

Must NOT use algebraic methods!

Let Ω = +,−,×, . . .∪Z be a class of operators

ZERO(Ω) is the corresponding zero problem

Zero Bound for Ω is a function B : Expr(Ω)→R≥0

such that e ∈ Expr(Ω) is non-zero implies

|e|> B(e)

How to use zero bounds? Combine with approximation.

Zero Bound is the bottleneck only in case of zero.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 37 / 113

Page 242: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Zero Bounds

Adaptive Zero Determination

Core of Core LibraryMust use numerical method based on Zero Bounds

Must NOT use algebraic methods!

Let Ω = +,−,×, . . .∪Z be a class of operators

ZERO(Ω) is the corresponding zero problem

Zero Bound for Ω is a function B : Expr(Ω)→R≥0

such that e ∈ Expr(Ω) is non-zero implies

|e|> B(e)

How to use zero bounds? Combine with approximation.

Zero Bound is the bottleneck only in case of zero.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 37 / 113

Page 243: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Zero Bounds

Adaptive Zero Determination

Core of Core LibraryMust use numerical method based on Zero Bounds

Must NOT use algebraic methods!

Let Ω = +,−,×, . . .∪Z be a class of operators

ZERO(Ω) is the corresponding zero problem

Zero Bound for Ω is a function B : Expr(Ω)→R≥0

such that e ∈ Expr(Ω) is non-zero implies

|e|> B(e)

How to use zero bounds? Combine with approximation.

Zero Bound is the bottleneck only in case of zero.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 37 / 113

Page 244: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Zero Bounds

Adaptive Zero Determination

Core of Core LibraryMust use numerical method based on Zero Bounds

Must NOT use algebraic methods!

Let Ω = +,−,×, . . .∪Z be a class of operators

ZERO(Ω) is the corresponding zero problem

Zero Bound for Ω is a function B : Expr(Ω)→R≥0

such that e ∈ Expr(Ω) is non-zero implies

|e|> B(e)

How to use zero bounds? Combine with approximation.

Zero Bound is the bottleneck only in case of zero.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 37 / 113

Page 245: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Zero Bounds

Adaptive Zero Determination

Core of Core LibraryMust use numerical method based on Zero Bounds

Must NOT use algebraic methods!

Let Ω = +,−,×, . . .∪Z be a class of operators

ZERO(Ω) is the corresponding zero problem

Zero Bound for Ω is a function B : Expr(Ω)→R≥0

such that e ∈ Expr(Ω) is non-zero implies

|e|> B(e)

How to use zero bounds? Combine with approximation.

Zero Bound is the bottleneck only in case of zero.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 37 / 113

Page 246: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Zero Bounds

Adaptive Zero Determination

Core of Core LibraryMust use numerical method based on Zero Bounds

Must NOT use algebraic methods!

Let Ω = +,−,×, . . .∪Z be a class of operators

ZERO(Ω) is the corresponding zero problem

Zero Bound for Ω is a function B : Expr(Ω)→R≥0

such that e ∈ Expr(Ω) is non-zero implies

|e|> B(e)

How to use zero bounds? Combine with approximation.

Zero Bound is the bottleneck only in case of zero.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 37 / 113

Page 247: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Zero Bounds

Adaptive Zero Determination

Core of Core LibraryMust use numerical method based on Zero Bounds

Must NOT use algebraic methods!

Let Ω = +,−,×, . . .∪Z be a class of operators

ZERO(Ω) is the corresponding zero problem

Zero Bound for Ω is a function B : Expr(Ω)→R≥0

such that e ∈ Expr(Ω) is non-zero implies

|e|> B(e)

How to use zero bounds? Combine with approximation.

Zero Bound is the bottleneck only in case of zero.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 37 / 113

Page 248: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Zero Bounds

Some Constructive Bounds

Degree-Measure Bounds [Mignotte (1982)], [Sekigawa (1997)]

Degree-Height, Degree-Length [Yap-Dube (1994)]

BFMS Bound [Burnikel et al (1989)]

Eigenvalue Bounds [Scheinerman (2000)]

Conjugate Bounds [Li-Yap (2001)]

BFMSS Bound [Burnikel et al (2001)] One of the best bounds

k-ary Method [Pion-Yap (2002)] Idea: division is bad. k-ary numbers are good

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 38 / 113

Page 249: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Zero Bounds

An Example

Consider the e =√

x +√

y−√

x + y +2√

xy .

Assume x = a/b and y = c/d where a,b,c,d are L-bit integers.

Then Li-Yap Bound is 28L+60 bits, BFMSS is 96L+30 andDegree-Measure is 80L+56.

Timing in seconds (Core 1.6):

L 50 100 500 5000BFMS 0.637 9.12 101.9 202.9

Measure 0.063 0.07 1.93 15.26BFMSS 0.073 0.61 1.95 15.41Li-Yap 0.013 0.07 1.88 1.89

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 39 / 113

Page 250: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Zero Bounds

An Example

Consider the e =√

x +√

y−√

x + y +2√

xy .

Assume x = a/b and y = c/d where a,b,c,d are L-bit integers.

Then Li-Yap Bound is 28L+60 bits, BFMSS is 96L+30 andDegree-Measure is 80L+56.

Timing in seconds (Core 1.6):

L 50 100 500 5000BFMS 0.637 9.12 101.9 202.9

Measure 0.063 0.07 1.93 15.26BFMSS 0.073 0.61 1.95 15.41Li-Yap 0.013 0.07 1.88 1.89

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 39 / 113

Page 251: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Zero Bounds

An Example

Consider the e =√

x +√

y−√

x + y +2√

xy .

Assume x = a/b and y = c/d where a,b,c,d are L-bit integers.

Then Li-Yap Bound is 28L+60 bits, BFMSS is 96L+30 andDegree-Measure is 80L+56.

Timing in seconds (Core 1.6):

L 50 100 500 5000BFMS 0.637 9.12 101.9 202.9

Measure 0.063 0.07 1.93 15.26BFMSS 0.073 0.61 1.95 15.41Li-Yap 0.013 0.07 1.88 1.89

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 39 / 113

Page 252: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Zero Bounds

An Example

Consider the e =√

x +√

y−√

x + y +2√

xy .

Assume x = a/b and y = c/d where a,b,c,d are L-bit integers.

Then Li-Yap Bound is 28L+60 bits, BFMSS is 96L+30 andDegree-Measure is 80L+56.

Timing in seconds (Core 1.6):

L 50 100 500 5000BFMS 0.637 9.12 101.9 202.9

Measure 0.063 0.07 1.93 15.26BFMSS 0.073 0.61 1.95 15.41Li-Yap 0.013 0.07 1.88 1.89

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 39 / 113

Page 253: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Zero Bounds

An Example

Consider the e =√

x +√

y−√

x + y +2√

xy .

Assume x = a/b and y = c/d where a,b,c,d are L-bit integers.

Then Li-Yap Bound is 28L+60 bits, BFMSS is 96L+30 andDegree-Measure is 80L+56.

Timing in seconds (Core 1.6):

L 50 100 500 5000BFMS 0.637 9.12 101.9 202.9

Measure 0.063 0.07 1.93 15.26BFMSS 0.073 0.61 1.95 15.41Li-Yap 0.013 0.07 1.88 1.89

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 39 / 113

Page 254: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Zero Bounds

An Example

Consider the e =√

x +√

y−√

x + y +2√

xy .

Assume x = a/b and y = c/d where a,b,c,d are L-bit integers.

Then Li-Yap Bound is 28L+60 bits, BFMSS is 96L+30 andDegree-Measure is 80L+56.

Timing in seconds (Core 1.6):

L 50 100 500 5000BFMS 0.637 9.12 101.9 202.9

Measure 0.063 0.07 1.93 15.26BFMSS 0.073 0.61 1.95 15.41Li-Yap 0.013 0.07 1.88 1.89

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 39 / 113

Page 255: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

There is a “Universal Solution” for synthesizing the Algebraic andthe Geometric viewpoints

Slogan: Algebraic computation without Algebra

(Use approximations & zero bounds)

PUZZLE 3: What was the answer to PUZZLE 2?

Page 256: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

There is a “Universal Solution” for synthesizing the Algebraic andthe Geometric viewpoints

Slogan: Algebraic computation without Algebra

(Use approximations & zero bounds)

PUZZLE 3: What was the answer to PUZZLE 2?

Page 257: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

There is a “Universal Solution” for synthesizing the Algebraic andthe Geometric viewpoints

Slogan: Algebraic computation without Algebra

(Use approximations & zero bounds)

PUZZLE 3: What was the answer to PUZZLE 2?

Page 258: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

There is a “Universal Solution” for synthesizing the Algebraic andthe Geometric viewpoints

Slogan: Algebraic computation without Algebra

(Use approximations & zero bounds)

PUZZLE 3: What was the answer to PUZZLE 2?

Page 259: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

There is a “Universal Solution” for synthesizing the Algebraic andthe Geometric viewpoints

Slogan: Algebraic computation without Algebra

(Use approximations & zero bounds)

PUZZLE 3: What was the answer to PUZZLE 2?

Page 260: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 1

Nature of Geometric Computation: Discrete as well as Continuous Algebraic as well as Analytic

It is possible to provide a fairly general solution (ENC) thatcombines the dual nature of numbers

Up Next : Directly design ENC algorithms

Page 261: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 1

Nature of Geometric Computation: Discrete as well as Continuous Algebraic as well as Analytic

It is possible to provide a fairly general solution (ENC) thatcombines the dual nature of numbers

Up Next : Directly design ENC algorithms

Page 262: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 1

Nature of Geometric Computation: Discrete as well as Continuous Algebraic as well as Analytic

It is possible to provide a fairly general solution (ENC) thatcombines the dual nature of numbers

Up Next : Directly design ENC algorithms

Page 263: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 1

Nature of Geometric Computation: Discrete as well as Continuous Algebraic as well as Analytic

It is possible to provide a fairly general solution (ENC) thatcombines the dual nature of numbers

Up Next : Directly design ENC algorithms

Page 264: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 1

Nature of Geometric Computation: Discrete as well as Continuous Algebraic as well as Analytic

It is possible to provide a fairly general solution (ENC) thatcombines the dual nature of numbers

Up Next : Directly design ENC algorithms

Page 265: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 1

Nature of Geometric Computation: Discrete as well as Continuous Algebraic as well as Analytic

It is possible to provide a fairly general solution (ENC) thatcombines the dual nature of numbers

Up Next : Directly design ENC algorithms

Page 266: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 1

Nature of Geometric Computation: Discrete as well as Continuous Algebraic as well as Analytic

It is possible to provide a fairly general solution (ENC) thatcombines the dual nature of numbers

Up Next : Directly design ENC algorithms

Page 267: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

PART 2

Explicitization and Subdivision

“It can be of no practical use to know that π is irrational, but if we canknow, it surely would be intolerable not to know.”

— E.C. Titchmarsh

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 42 / 113

Page 268: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Coming Up Next

6 Introduction

7 Review of Subdivision Algorithms

8 Cxy Algorithm

9 Extensions of Cxy

10 How to treat Boundary

11 How to treat Singularity

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 43 / 113

Page 269: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Towards Exact Numerical Computation (ENC)

Beyond the Universal Solution

Design algorithms directly incorporating the principles of EGC

What do we need? What are its features? It must be numerical in nature It must be arbitrary precision It must respect zero It must be adaptive

⋆ actively control precision⋆ exploit filters

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 44 / 113

Page 270: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Towards Exact Numerical Computation (ENC)

Beyond the Universal Solution

Design algorithms directly incorporating the principles of EGC

What do we need? What are its features? It must be numerical in nature It must be arbitrary precision It must respect zero It must be adaptive

⋆ actively control precision⋆ exploit filters

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 44 / 113

Page 271: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Towards Exact Numerical Computation (ENC)

Beyond the Universal Solution

Design algorithms directly incorporating the principles of EGC

What do we need? What are its features? It must be numerical in nature It must be arbitrary precision It must respect zero It must be adaptive

⋆ actively control precision⋆ exploit filters

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 44 / 113

Page 272: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Towards Exact Numerical Computation (ENC)

Beyond the Universal Solution

Design algorithms directly incorporating the principles of EGC

What do we need? What are its features? It must be numerical in nature It must be arbitrary precision It must respect zero It must be adaptive

⋆ actively control precision⋆ exploit filters

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 44 / 113

Page 273: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Towards Exact Numerical Computation (ENC)

Beyond the Universal Solution

Design algorithms directly incorporating the principles of EGC

What do we need? What are its features? It must be numerical in nature It must be arbitrary precision It must respect zero It must be adaptive

⋆ actively control precision⋆ exploit filters

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 44 / 113

Page 274: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Towards Exact Numerical Computation (ENC)

Beyond the Universal Solution

Design algorithms directly incorporating the principles of EGC

What do we need? What are its features? It must be numerical in nature It must be arbitrary precision It must respect zero It must be adaptive

⋆ actively control precision⋆ exploit filters

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 44 / 113

Page 275: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Towards Exact Numerical Computation (ENC)

Beyond the Universal Solution

Design algorithms directly incorporating the principles of EGC

What do we need? What are its features? It must be numerical in nature It must be arbitrary precision It must respect zero It must be adaptive

⋆ actively control precision⋆ exploit filters

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 44 / 113

Page 276: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Towards Exact Numerical Computation (ENC)

Beyond the Universal Solution

Design algorithms directly incorporating the principles of EGC

What do we need? What are its features? It must be numerical in nature It must be arbitrary precision It must respect zero It must be adaptive

⋆ actively control precision⋆ exploit filters

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 44 / 113

Page 277: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Towards Exact Numerical Computation (ENC)

Beyond the Universal Solution

Design algorithms directly incorporating the principles of EGC

What do we need? What are its features? It must be numerical in nature It must be arbitrary precision It must respect zero It must be adaptive

⋆ actively control precision⋆ exploit filters

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 44 / 113

Page 278: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Computational Ring ApproachComputational Ring (D,0,1,+,−,×,÷2)

D is countable, dense subset of R

D is a ring extension of Z

Efficient representation ρ : 0,1∗ ≻D for implementing ringoperations, and exact comparison.

Examples of D

BigFloats or dyadic numbers:

F := m2n : m,n ∈Z= Z[1

2]

Rationals: Q (avoid, if possible)

Real Algebraic Numbers: A (AVOID!)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 45 / 113

Page 279: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Computational Ring ApproachComputational Ring (D,0,1,+,−,×,÷2)

D is countable, dense subset of R

D is a ring extension of Z

Efficient representation ρ : 0,1∗ ≻D for implementing ringoperations, and exact comparison.

Examples of D

BigFloats or dyadic numbers:

F := m2n : m,n ∈Z= Z[1

2]

Rationals: Q (avoid, if possible)

Real Algebraic Numbers: A (AVOID!)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 45 / 113

Page 280: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Computational Ring ApproachComputational Ring (D,0,1,+,−,×,÷2)

D is countable, dense subset of R

D is a ring extension of Z

Efficient representation ρ : 0,1∗ ≻D for implementing ringoperations, and exact comparison.

Examples of D

BigFloats or dyadic numbers:

F := m2n : m,n ∈Z= Z[1

2]

Rationals: Q (avoid, if possible)

Real Algebraic Numbers: A (AVOID!)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 45 / 113

Page 281: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Computational Ring ApproachComputational Ring (D,0,1,+,−,×,÷2)

D is countable, dense subset of R

D is a ring extension of Z

Efficient representation ρ : 0,1∗ ≻D for implementing ringoperations, and exact comparison.

Examples of D

BigFloats or dyadic numbers:

F := m2n : m,n ∈Z= Z[1

2]

Rationals: Q (avoid, if possible)

Real Algebraic Numbers: A (AVOID!)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 45 / 113

Page 282: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Computational Ring ApproachComputational Ring (D,0,1,+,−,×,÷2)

D is countable, dense subset of R

D is a ring extension of Z

Efficient representation ρ : 0,1∗ ≻D for implementing ringoperations, and exact comparison.

Examples of D

BigFloats or dyadic numbers:

F := m2n : m,n ∈Z= Z[1

2]

Rationals: Q (avoid, if possible)

Real Algebraic Numbers: A (AVOID!)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 45 / 113

Page 283: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Computational Ring ApproachComputational Ring (D,0,1,+,−,×,÷2)

D is countable, dense subset of R

D is a ring extension of Z

Efficient representation ρ : 0,1∗ ≻D for implementing ringoperations, and exact comparison.

Examples of D

BigFloats or dyadic numbers:

F := m2n : m,n ∈Z= Z[1

2]

Rationals: Q (avoid, if possible)

Real Algebraic Numbers: A (AVOID!)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 45 / 113

Page 284: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Computational Ring ApproachComputational Ring (D,0,1,+,−,×,÷2)

D is countable, dense subset of R

D is a ring extension of Z

Efficient representation ρ : 0,1∗ ≻D for implementing ringoperations, and exact comparison.

Examples of D

BigFloats or dyadic numbers:

F := m2n : m,n ∈Z= Z[1

2]

Rationals: Q (avoid, if possible)

Real Algebraic Numbers: A (AVOID!)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 45 / 113

Page 285: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Computational Ring ApproachComputational Ring (D,0,1,+,−,×,÷2)

D is countable, dense subset of R

D is a ring extension of Z

Efficient representation ρ : 0,1∗ ≻D for implementing ringoperations, and exact comparison.

Examples of D

BigFloats or dyadic numbers:

F := m2n : m,n ∈Z= Z[1

2]

Rationals: Q (avoid, if possible)

Real Algebraic Numbers: A (AVOID!)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 45 / 113

Page 286: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

What else is needed in ENC Algorithms?

IntervalsD: set of dyadic intervals

Dn: set of n-boxes

Box FunctionsLet f : Dm→D.

Box function f : m(D)→ (D) (1) Inclusion: f (B)⊆ f (B). (2) Convergence: limi→∞ f (Bi) = f (limi→∞ Bi).

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 46 / 113

Page 287: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

What else is needed in ENC Algorithms?

IntervalsD: set of dyadic intervals

Dn: set of n-boxes

Box FunctionsLet f : Dm→D.

Box function f : m(D)→ (D) (1) Inclusion: f (B)⊆ f (B). (2) Convergence: limi→∞ f (Bi) = f (limi→∞ Bi).

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 46 / 113

Page 288: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

What else is needed in ENC Algorithms?

IntervalsD: set of dyadic intervals

Dn: set of n-boxes

Box FunctionsLet f : Dm→D.

Box function f : m(D)→ (D) (1) Inclusion: f (B)⊆ f (B). (2) Convergence: limi→∞ f (Bi) = f (limi→∞ Bi).

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 46 / 113

Page 289: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

What else is needed in ENC Algorithms?

IntervalsD: set of dyadic intervals

Dn: set of n-boxes

Box FunctionsLet f : Dm→D.

Box function f : m(D)→ (D) (1) Inclusion: f (B)⊆ f (B). (2) Convergence: limi→∞ f (Bi) = f (limi→∞ Bi).

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 46 / 113

Page 290: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

What else is needed in ENC Algorithms?

IntervalsD: set of dyadic intervals

Dn: set of n-boxes

Box FunctionsLet f : Dm→D.

Box function f : m(D)→ (D) (1) Inclusion: f (B)⊆ f (B). (2) Convergence: limi→∞ f (Bi) = f (limi→∞ Bi).

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 46 / 113

Page 291: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

What else is needed in ENC Algorithms?

IntervalsD: set of dyadic intervals

Dn: set of n-boxes

Box FunctionsLet f : Dm→D.

Box function f : m(D)→ (D) (1) Inclusion: f (B)⊆ f (B). (2) Convergence: limi→∞ f (Bi) = f (limi→∞ Bi).

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 46 / 113

Page 292: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

What else is needed in ENC Algorithms?

IntervalsD: set of dyadic intervals

Dn: set of n-boxes

Box FunctionsLet f : Dm→D.

Box function f : m(D)→ (D) (1) Inclusion: f (B)⊆ f (B). (2) Convergence: limi→∞ f (Bi) = f (limi→∞ Bi).

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 46 / 113

Page 293: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

What else is needed in ENC Algorithms?

IntervalsD: set of dyadic intervals

Dn: set of n-boxes

Box FunctionsLet f : Dm→D.

Box function f : m(D)→ (D) (1) Inclusion: f (B)⊆ f (B). (2) Convergence: limi→∞ f (Bi) = f (limi→∞ Bi).

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 46 / 113

Page 294: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

What else is needed in ENC Algorithms?

IntervalsD: set of dyadic intervals

Dn: set of n-boxes

Box FunctionsLet f : Dm→D.

Box function f : m(D)→ (D) (1) Inclusion: f (B)⊆ f (B). (2) Convergence: limi→∞ f (Bi) = f (limi→∞ Bi).

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 46 / 113

Page 295: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Our Target: Explicitization ProblemsFrom Implicit to Explicit Representation

Mesh generation [Problem (IV)]

Discrete Morse-Smale complex [Problem (V)]

Arrangement of hypersurfaces

Voronoi diagram of a collection of objects

Cell complex approximation of algebraic variety

Representation of Flow fields

From Parameter Space to Ambient SpaceWhy this class? Interface between Continuous and Discrete!

ENC Algorithms is ideal for this class

Interplay of Topological and Geometric requirements

Domain subdivision as the general algorithmic paradigmYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 47 / 113

Page 296: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Our Target: Explicitization ProblemsFrom Implicit to Explicit Representation

Mesh generation [Problem (IV)]

Discrete Morse-Smale complex [Problem (V)]

Arrangement of hypersurfaces

Voronoi diagram of a collection of objects

Cell complex approximation of algebraic variety

Representation of Flow fields

From Parameter Space to Ambient SpaceWhy this class? Interface between Continuous and Discrete!

ENC Algorithms is ideal for this class

Interplay of Topological and Geometric requirements

Domain subdivision as the general algorithmic paradigmYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 47 / 113

Page 297: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Our Target: Explicitization ProblemsFrom Implicit to Explicit Representation

Mesh generation [Problem (IV)]

Discrete Morse-Smale complex [Problem (V)]

Arrangement of hypersurfaces

Voronoi diagram of a collection of objects

Cell complex approximation of algebraic variety

Representation of Flow fields

From Parameter Space to Ambient SpaceWhy this class? Interface between Continuous and Discrete!

ENC Algorithms is ideal for this class

Interplay of Topological and Geometric requirements

Domain subdivision as the general algorithmic paradigmYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 47 / 113

Page 298: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Our Target: Explicitization ProblemsFrom Implicit to Explicit Representation

Mesh generation [Problem (IV)]

Discrete Morse-Smale complex [Problem (V)]

Arrangement of hypersurfaces

Voronoi diagram of a collection of objects

Cell complex approximation of algebraic variety

Representation of Flow fields

From Parameter Space to Ambient SpaceWhy this class? Interface between Continuous and Discrete!

ENC Algorithms is ideal for this class

Interplay of Topological and Geometric requirements

Domain subdivision as the general algorithmic paradigmYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 47 / 113

Page 299: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Our Target: Explicitization ProblemsFrom Implicit to Explicit Representation

Mesh generation [Problem (IV)]

Discrete Morse-Smale complex [Problem (V)]

Arrangement of hypersurfaces

Voronoi diagram of a collection of objects

Cell complex approximation of algebraic variety

Representation of Flow fields

From Parameter Space to Ambient SpaceWhy this class? Interface between Continuous and Discrete!

ENC Algorithms is ideal for this class

Interplay of Topological and Geometric requirements

Domain subdivision as the general algorithmic paradigmYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 47 / 113

Page 300: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Our Target: Explicitization ProblemsFrom Implicit to Explicit Representation

Mesh generation [Problem (IV)]

Discrete Morse-Smale complex [Problem (V)]

Arrangement of hypersurfaces

Voronoi diagram of a collection of objects

Cell complex approximation of algebraic variety

Representation of Flow fields

From Parameter Space to Ambient SpaceWhy this class? Interface between Continuous and Discrete!

ENC Algorithms is ideal for this class

Interplay of Topological and Geometric requirements

Domain subdivision as the general algorithmic paradigmYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 47 / 113

Page 301: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Our Target: Explicitization ProblemsFrom Implicit to Explicit Representation

Mesh generation [Problem (IV)]

Discrete Morse-Smale complex [Problem (V)]

Arrangement of hypersurfaces

Voronoi diagram of a collection of objects

Cell complex approximation of algebraic variety

Representation of Flow fields

From Parameter Space to Ambient SpaceWhy this class? Interface between Continuous and Discrete!

ENC Algorithms is ideal for this class

Interplay of Topological and Geometric requirements

Domain subdivision as the general algorithmic paradigmYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 47 / 113

Page 302: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Our Target: Explicitization ProblemsFrom Implicit to Explicit Representation

Mesh generation [Problem (IV)]

Discrete Morse-Smale complex [Problem (V)]

Arrangement of hypersurfaces

Voronoi diagram of a collection of objects

Cell complex approximation of algebraic variety

Representation of Flow fields

From Parameter Space to Ambient SpaceWhy this class? Interface between Continuous and Discrete!

ENC Algorithms is ideal for this class

Interplay of Topological and Geometric requirements

Domain subdivision as the general algorithmic paradigmYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 47 / 113

Page 303: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Our Target: Explicitization ProblemsFrom Implicit to Explicit Representation

Mesh generation [Problem (IV)]

Discrete Morse-Smale complex [Problem (V)]

Arrangement of hypersurfaces

Voronoi diagram of a collection of objects

Cell complex approximation of algebraic variety

Representation of Flow fields

From Parameter Space to Ambient SpaceWhy this class? Interface between Continuous and Discrete!

ENC Algorithms is ideal for this class

Interplay of Topological and Geometric requirements

Domain subdivision as the general algorithmic paradigmYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 47 / 113

Page 304: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Our Target: Explicitization ProblemsFrom Implicit to Explicit Representation

Mesh generation [Problem (IV)]

Discrete Morse-Smale complex [Problem (V)]

Arrangement of hypersurfaces

Voronoi diagram of a collection of objects

Cell complex approximation of algebraic variety

Representation of Flow fields

From Parameter Space to Ambient SpaceWhy this class? Interface between Continuous and Discrete!

ENC Algorithms is ideal for this class

Interplay of Topological and Geometric requirements

Domain subdivision as the general algorithmic paradigmYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 47 / 113

Page 305: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Our Target: Explicitization ProblemsFrom Implicit to Explicit Representation

Mesh generation [Problem (IV)]

Discrete Morse-Smale complex [Problem (V)]

Arrangement of hypersurfaces

Voronoi diagram of a collection of objects

Cell complex approximation of algebraic variety

Representation of Flow fields

From Parameter Space to Ambient SpaceWhy this class? Interface between Continuous and Discrete!

ENC Algorithms is ideal for this class

Interplay of Topological and Geometric requirements

Domain subdivision as the general algorithmic paradigmYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 47 / 113

Page 306: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Our Target: Explicitization ProblemsFrom Implicit to Explicit Representation

Mesh generation [Problem (IV)]

Discrete Morse-Smale complex [Problem (V)]

Arrangement of hypersurfaces

Voronoi diagram of a collection of objects

Cell complex approximation of algebraic variety

Representation of Flow fields

From Parameter Space to Ambient SpaceWhy this class? Interface between Continuous and Discrete!

ENC Algorithms is ideal for this class

Interplay of Topological and Geometric requirements

Domain subdivision as the general algorithmic paradigmYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 47 / 113

Page 307: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Our Target: Explicitization ProblemsFrom Implicit to Explicit Representation

Mesh generation [Problem (IV)]

Discrete Morse-Smale complex [Problem (V)]

Arrangement of hypersurfaces

Voronoi diagram of a collection of objects

Cell complex approximation of algebraic variety

Representation of Flow fields

From Parameter Space to Ambient SpaceWhy this class? Interface between Continuous and Discrete!

ENC Algorithms is ideal for this class

Interplay of Topological and Geometric requirements

Domain subdivision as the general algorithmic paradigmYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 47 / 113

Page 308: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Three Approaches to Meshing, I:

1. Algebraic Approach

Projection Based (Refinements of CAD)E.g., [Mourrain and Tecourt (2005); Cheng, Gao, and Li (2005) ]

Algebraic Subdivision SchemesE.g., [Wolpert and Seidel (2005)]

Properties Exact; complete (usually); slow (in general); hard to

implement

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 48 / 113

Page 309: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Three Approaches to Meshing, I:

1. Algebraic Approach

Projection Based (Refinements of CAD)E.g., [Mourrain and Tecourt (2005); Cheng, Gao, and Li (2005) ]

Algebraic Subdivision SchemesE.g., [Wolpert and Seidel (2005)]

Properties Exact; complete (usually); slow (in general); hard to

implement

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 48 / 113

Page 310: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Three Approaches to Meshing, I:

1. Algebraic Approach

Projection Based (Refinements of CAD)E.g., [Mourrain and Tecourt (2005); Cheng, Gao, and Li (2005) ]

Algebraic Subdivision SchemesE.g., [Wolpert and Seidel (2005)]

Properties Exact; complete (usually); slow (in general); hard to

implement

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 48 / 113

Page 311: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Three Approaches to Meshing, I:

1. Algebraic Approach

Projection Based (Refinements of CAD)E.g., [Mourrain and Tecourt (2005); Cheng, Gao, and Li (2005) ]

Algebraic Subdivision SchemesE.g., [Wolpert and Seidel (2005)]

Properties Exact; complete (usually); slow (in general); hard to

implement

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 48 / 113

Page 312: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Three Approaches to Meshing, I:

1. Algebraic Approach

Projection Based (Refinements of CAD)E.g., [Mourrain and Tecourt (2005); Cheng, Gao, and Li (2005) ]

Algebraic Subdivision SchemesE.g., [Wolpert and Seidel (2005)]

Properties Exact; complete (usually); slow (in general); hard to

implement

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 48 / 113

Page 313: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Three Approaches to Meshing, II:

2. Geometric Approach

Sampling Approach (Ray Shooting)E.g., [Boissonnat & Oudot (2005); Cheng, Dey, Ramos and Ray (2004)]

Morse theoryE.g., [Stander & Hart (1997); Boissonnat, Cohen-Steiner & Vegter (2004)]

Properties Implementation gaps; requires “niceness conditions”

(Morseness, non-singularity, etc)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 49 / 113

Page 314: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Three Approaches to Meshing, II:

2. Geometric Approach

Sampling Approach (Ray Shooting)E.g., [Boissonnat & Oudot (2005); Cheng, Dey, Ramos and Ray (2004)]

Morse theoryE.g., [Stander & Hart (1997); Boissonnat, Cohen-Steiner & Vegter (2004)]

Properties Implementation gaps; requires “niceness conditions”

(Morseness, non-singularity, etc)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 49 / 113

Page 315: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Three Approaches to Meshing, II:

2. Geometric Approach

Sampling Approach (Ray Shooting)E.g., [Boissonnat & Oudot (2005); Cheng, Dey, Ramos and Ray (2004)]

Morse theoryE.g., [Stander & Hart (1997); Boissonnat, Cohen-Steiner & Vegter (2004)]

Properties Implementation gaps; requires “niceness conditions”

(Morseness, non-singularity, etc)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 49 / 113

Page 316: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Three Approaches to Meshing, II:

2. Geometric Approach

Sampling Approach (Ray Shooting)E.g., [Boissonnat & Oudot (2005); Cheng, Dey, Ramos and Ray (2004)]

Morse theoryE.g., [Stander & Hart (1997); Boissonnat, Cohen-Steiner & Vegter (2004)]

Properties Implementation gaps; requires “niceness conditions”

(Morseness, non-singularity, etc)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 49 / 113

Page 317: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Three Approaches to Meshing, II:

2. Geometric Approach

Sampling Approach (Ray Shooting)E.g., [Boissonnat & Oudot (2005); Cheng, Dey, Ramos and Ray (2004)]

Morse theoryE.g., [Stander & Hart (1997); Boissonnat, Cohen-Steiner & Vegter (2004)]

Properties Implementation gaps; requires “niceness conditions”

(Morseness, non-singularity, etc)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 49 / 113

Page 318: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Three Approaches to Meshing, III:

3. Numeric Approach

Curve Tracing Literature[Ratschek & Rokne (2005)]

Subdivision Approach[Marching Cube (1987); Snyder (1992); Plantinga & Vegter (2004)]

Properties Practical; easy to implement; adaptive; incomplete (until

recently)

This is our focus

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 50 / 113

Page 319: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Three Approaches to Meshing, III:

3. Numeric Approach

Curve Tracing Literature[Ratschek & Rokne (2005)]

Subdivision Approach[Marching Cube (1987); Snyder (1992); Plantinga & Vegter (2004)]

Properties Practical; easy to implement; adaptive; incomplete (until

recently)

This is our focus

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 50 / 113

Page 320: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Three Approaches to Meshing, III:

3. Numeric Approach

Curve Tracing Literature[Ratschek & Rokne (2005)]

Subdivision Approach[Marching Cube (1987); Snyder (1992); Plantinga & Vegter (2004)]

Properties Practical; easy to implement; adaptive; incomplete (until

recently)

This is our focus

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 50 / 113

Page 321: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Three Approaches to Meshing, III:

3. Numeric Approach

Curve Tracing Literature[Ratschek & Rokne (2005)]

Subdivision Approach[Marching Cube (1987); Snyder (1992); Plantinga & Vegter (2004)]

Properties Practical; easy to implement; adaptive; incomplete (until

recently)

This is our focus

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 50 / 113

Page 322: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Three Approaches to Meshing, III:

3. Numeric Approach

Curve Tracing Literature[Ratschek & Rokne (2005)]

Subdivision Approach[Marching Cube (1987); Snyder (1992); Plantinga & Vegter (2004)]

Properties Practical; easy to implement; adaptive; incomplete (until

recently)

This is our focus

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 50 / 113

Page 323: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Three Approaches to Meshing, III:

3. Numeric Approach

Curve Tracing Literature[Ratschek & Rokne (2005)]

Subdivision Approach[Marching Cube (1987); Snyder (1992); Plantinga & Vegter (2004)]

Properties Practical; easy to implement; adaptive; incomplete (until

recently)

This is our focus

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 50 / 113

Page 324: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

Two Criteria of Meshing

I. Topological Correctness

The approximation S is isotopic to the S.

S1 S2 S1 and S2 arehomeomorphic , but notisotopic

Ambient space property!

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 51 / 113

Page 325: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Introduction

(contd.) Two Criteria of Meshing

II. Geometrical Accuracy (ε-closeness)

For any given ε > 0, the Hausdorff distance d(S, S) should notexceed ε .

Set ε = ∞ to focus on isotopy.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 52 / 113

Page 326: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Want ENC algorithms for Explicitization Problems

Focus on (purely) Numerical Subdivision methods

Algorithms for Meshing Curves (and Surfaces)

What will be New?Numerical methods that are exact and can handle singularities

Page 327: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Want ENC algorithms for Explicitization Problems

Focus on (purely) Numerical Subdivision methods

Algorithms for Meshing Curves (and Surfaces)

What will be New?Numerical methods that are exact and can handle singularities

Page 328: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Want ENC algorithms for Explicitization Problems

Focus on (purely) Numerical Subdivision methods

Algorithms for Meshing Curves (and Surfaces)

What will be New?Numerical methods that are exact and can handle singularities

Page 329: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Want ENC algorithms for Explicitization Problems

Focus on (purely) Numerical Subdivision methods

Algorithms for Meshing Curves (and Surfaces)

What will be New?Numerical methods that are exact and can handle singularities

Page 330: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Want ENC algorithms for Explicitization Problems

Focus on (purely) Numerical Subdivision methods

Algorithms for Meshing Curves (and Surfaces)

What will be New?Numerical methods that are exact and can handle singularities

Page 331: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Want ENC algorithms for Explicitization Problems

Focus on (purely) Numerical Subdivision methods

Algorithms for Meshing Curves (and Surfaces)

What will be New?Numerical methods that are exact and can handle singularities

Page 332: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

Coming Up Next

6 Introduction

7 Review of Subdivision Algorithms

8 Cxy Algorithm

9 Extensions of Cxy

10 How to treat Boundary

11 How to treat Singularity

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 54 / 113

Page 333: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

Subdivision Algorithms

Viewed as generalized binary search, organized as a quadtree.

Here is a typical output:

Figure: Approximation of the curve f (X ,Y ) = Y 2−X2 +X3 +0.02 = 0

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 55 / 113

Page 334: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

The Generic Subdivision Algorithm

INPUT: Curve S = f−1(0), box B0 ⊆R2, and ε > 0

OUTPUT: Graph G = (V ,E),representing an isotopic ε-approximation of S∩B0.

1 Let Qin← B0 be a queue of boxes2 SUBDIVISION PHASE: Qout ← SUBDIVIDE(Qin)3 REFINEMENT PHASE: Qref ← REFINE(Qout)4 CONSTRUCTION PHASE: G← CONSTRUCT (Qref )

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 56 / 113

Page 335: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

The Generic Subdivision Algorithm

INPUT: Curve S = f−1(0), box B0 ⊆R2, and ε > 0

OUTPUT: Graph G = (V ,E),representing an isotopic ε-approximation of S∩B0.

1 Let Qin← B0 be a queue of boxes2 SUBDIVISION PHASE: Qout ← SUBDIVIDE(Qin)3 REFINEMENT PHASE: Qref ← REFINE(Qout)4 CONSTRUCTION PHASE: G← CONSTRUCT (Qref )

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 56 / 113

Page 336: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

The Generic Subdivision Algorithm

INPUT: Curve S = f−1(0), box B0 ⊆R2, and ε > 0

OUTPUT: Graph G = (V ,E),representing an isotopic ε-approximation of S∩B0.

1 Let Qin← B0 be a queue of boxes2 SUBDIVISION PHASE: Qout ← SUBDIVIDE(Qin)3 REFINEMENT PHASE: Qref ← REFINE(Qout)4 CONSTRUCTION PHASE: G← CONSTRUCT (Qref )

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 56 / 113

Page 337: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

The Generic Subdivision Algorithm

INPUT: Curve S = f−1(0), box B0 ⊆R2, and ε > 0

OUTPUT: Graph G = (V ,E),representing an isotopic ε-approximation of S∩B0.

1 Let Qin← B0 be a queue of boxes2 SUBDIVISION PHASE: Qout ← SUBDIVIDE(Qin)3 REFINEMENT PHASE: Qref ← REFINE(Qout)4 CONSTRUCTION PHASE: G← CONSTRUCT (Qref )

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 56 / 113

Page 338: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

The Generic Subdivision Algorithm

INPUT: Curve S = f−1(0), box B0 ⊆R2, and ε > 0

OUTPUT: Graph G = (V ,E),representing an isotopic ε-approximation of S∩B0.

1 Let Qin← B0 be a queue of boxes2 SUBDIVISION PHASE: Qout ← SUBDIVIDE(Qin)3 REFINEMENT PHASE: Qref ← REFINE(Qout)4 CONSTRUCTION PHASE: G← CONSTRUCT (Qref )

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 56 / 113

Page 339: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

The Generic Subdivision Algorithm

INPUT: Curve S = f−1(0), box B0 ⊆R2, and ε > 0

OUTPUT: Graph G = (V ,E),representing an isotopic ε-approximation of S∩B0.

1 Let Qin← B0 be a queue of boxes2 SUBDIVISION PHASE: Qout ← SUBDIVIDE(Qin)3 REFINEMENT PHASE: Qref ← REFINE(Qout)4 CONSTRUCTION PHASE: G← CONSTRUCT (Qref )

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 56 / 113

Page 340: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

The Generic Subdivision Algorithm

INPUT: Curve S = f−1(0), box B0 ⊆R2, and ε > 0

OUTPUT: Graph G = (V ,E),representing an isotopic ε-approximation of S∩B0.

1 Let Qin← B0 be a queue of boxes2 SUBDIVISION PHASE: Qout ← SUBDIVIDE(Qin)3 REFINEMENT PHASE: Qref ← REFINE(Qout)4 CONSTRUCTION PHASE: G← CONSTRUCT (Qref )

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 56 / 113

Page 341: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

The Generic Subdivision Algorithm

INPUT: Curve S = f−1(0), box B0 ⊆R2, and ε > 0

OUTPUT: Graph G = (V ,E),representing an isotopic ε-approximation of S∩B0.

1 Let Qin← B0 be a queue of boxes2 SUBDIVISION PHASE: Qout ← SUBDIVIDE(Qin)3 REFINEMENT PHASE: Qref ← REFINE(Qout)4 CONSTRUCTION PHASE: G← CONSTRUCT (Qref )

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 56 / 113

Page 342: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

E.g., Marching Cube

Subdivision PhaseSubdivide until size of each box ≤ ε .

Construction Phase(1) Evaluate sign of f at grid points, (2) insert vertices, and (3) connectthem in each box:

+

+

(b)

+

+

(d)

+

+−

(c)

+

+

(a)

+

Cannot guarantee the topological correctness

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 57 / 113

Page 343: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

Parametrizability and Normal Variation

Parametrizable in X -direction

(d)(c)(b)(a)

(a) Parametrizable in X -direction

(b) Non-parametrizable in X - or Y -direction

(c) Small normal variation

(d) Big normal variation

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 58 / 113

Page 344: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

Box Predicates

Three Conditions (Predicates)

C0 0 /∈ f (B) Exclusion

Cxy 0 /∈ fx(B) or 0 /∈ fy (B) Parametrizability

C1 0 /∈ fx(B)2 + fy(B)2 Small Normal Variation

Implementation: e.g., f (x,y) = x2−2xy +3yInterval Arithmetic (Box):

f (I,J) = I2−2IJ +3J

Interval Taylor (Disc): f (x ,y , r) = [f (x ,y)± r(|2(x − y)|+ |−2x +3|+3r2)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 59 / 113

Page 345: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

Box Predicates

Three Conditions (Predicates)

C0 0 /∈ f (B) Exclusion

Cxy 0 /∈ fx(B) or 0 /∈ fy (B) Parametrizability

C1 0 /∈ fx(B)2 + fy(B)2 Small Normal Variation

Implementation: e.g., f (x,y) = x2−2xy +3yInterval Arithmetic (Box):

f (I,J) = I2−2IJ +3J

Interval Taylor (Disc): f (x ,y , r) = [f (x ,y)± r(|2(x − y)|+ |−2x +3|+3r2)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 59 / 113

Page 346: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

Box Predicates

Three Conditions (Predicates)

C0 0 /∈ f (B) Exclusion

Cxy 0 /∈ fx(B) or 0 /∈ fy (B) Parametrizability

C1 0 /∈ fx(B)2 + fy(B)2 Small Normal Variation

Implementation: e.g., f (x,y) = x2−2xy +3yInterval Arithmetic (Box):

f (I,J) = I2−2IJ +3J

Interval Taylor (Disc): f (x ,y , r) = [f (x ,y)± r(|2(x − y)|+ |−2x +3|+3r2)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 59 / 113

Page 347: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

Box Predicates

Three Conditions (Predicates)

C0 0 /∈ f (B) Exclusion

Cxy 0 /∈ fx(B) or 0 /∈ fy (B) Parametrizability

C1 0 /∈ fx(B)2 + fy(B)2 Small Normal Variation

Implementation: e.g., f (x,y) = x2−2xy +3yInterval Arithmetic (Box):

f (I,J) = I2−2IJ +3J

Interval Taylor (Disc): f (x ,y , r) = [f (x ,y)± r(|2(x − y)|+ |−2x +3|+3r2)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 59 / 113

Page 348: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

Box Predicates

Three Conditions (Predicates)

C0 0 /∈ f (B) Exclusion

Cxy 0 /∈ fx(B) or 0 /∈ fy (B) Parametrizability

C1 0 /∈ fx(B)2 + fy(B)2 Small Normal Variation

Implementation: e.g., f (x,y) = x2−2xy +3yInterval Arithmetic (Box):

f (I,J) = I2−2IJ +3J

Interval Taylor (Disc): f (x ,y , r) = [f (x ,y)± r(|2(x − y)|+ |−2x +3|+3r2)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 59 / 113

Page 349: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

Box Predicates

Three Conditions (Predicates)

C0 0 /∈ f (B) Exclusion

Cxy 0 /∈ fx(B) or 0 /∈ fy (B) Parametrizability

C1 0 /∈ fx(B)2 + fy(B)2 Small Normal Variation

Implementation: e.g., f (x,y) = x2−2xy +3yInterval Arithmetic (Box):

f (I,J) = I2−2IJ +3J

Interval Taylor (Disc): f (x ,y , r) = [f (x ,y)± r(|2(x − y)|+ |−2x +3|+3r2)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 59 / 113

Page 350: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

Box Predicates

Three Conditions (Predicates)

C0 0 /∈ f (B) Exclusion

Cxy 0 /∈ fx(B) or 0 /∈ fy (B) Parametrizability

C1 0 /∈ fx(B)2 + fy(B)2 Small Normal Variation

Implementation: e.g., f (x,y) = x2−2xy +3yInterval Arithmetic (Box):

f (I,J) = I2−2IJ +3J

Interval Taylor (Disc): f (x ,y , r) = [f (x ,y)± r(|2(x − y)|+ |−2x +3|+3r2)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 59 / 113

Page 351: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

Box Predicates

Three Conditions (Predicates)

C0 0 /∈ f (B) Exclusion

Cxy 0 /∈ fx(B) or 0 /∈ fy (B) Parametrizability

C1 0 /∈ fx(B)2 + fy(B)2 Small Normal Variation

Implementation: e.g., f (x,y) = x2−2xy +3yInterval Arithmetic (Box):

f (I,J) = I2−2IJ +3J

Interval Taylor (Disc): f (x ,y , r) = [f (x ,y)± r(|2(x − y)|+ |−2x +3|+3r2)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 59 / 113

Page 352: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

Box Predicates

Three Conditions (Predicates)

C0 0 /∈ f (B) Exclusion

Cxy 0 /∈ fx(B) or 0 /∈ fy (B) Parametrizability

C1 0 /∈ fx(B)2 + fy(B)2 Small Normal Variation

Implementation: e.g., f (x,y) = x2−2xy +3yInterval Arithmetic (Box):

f (I,J) = I2−2IJ +3J

Interval Taylor (Disc): f (x ,y , r) = [f (x ,y)± r(|2(x − y)|+ |−2x +3|+3r2)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 59 / 113

Page 353: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

Box Predicates

Three Conditions (Predicates)

C0 0 /∈ f (B) Exclusion

Cxy 0 /∈ fx(B) or 0 /∈ fy (B) Parametrizability

C1 0 /∈ fx(B)2 + fy(B)2 Small Normal Variation

Implementation: e.g., f (x,y) = x2−2xy +3yInterval Arithmetic (Box):

f (I,J) = I2−2IJ +3J

Interval Taylor (Disc): f (x ,y , r) = [f (x ,y)± r(|2(x − y)|+ |−2x +3|+3r2)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 59 / 113

Page 354: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

Box Predicates

Three Conditions (Predicates)

C0 0 /∈ f (B) Exclusion

Cxy 0 /∈ fx(B) or 0 /∈ fy (B) Parametrizability

C1 0 /∈ fx(B)2 + fy(B)2 Small Normal Variation

Implementation: e.g., f (x,y) = x2−2xy +3yInterval Arithmetic (Box):

f (I,J) = I2−2IJ +3J

Interval Taylor (Disc): f (x ,y , r) = [f (x ,y)± r(|2(x − y)|+ |−2x +3|+3r2)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 59 / 113

Page 355: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

Snyder’s Algorithm

Subdivision PhaseFor each box B:

C0(B)⇒ discard

¬Cxy(B)⇒ subdivide B

Construction PhaseDetermine intersections on boundary

Connect the intersections

(Non-trivial, unbounded complexity)

Boundary Analysis is not good (may not even terminate).

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 60 / 113

Page 356: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

Snyder’s Algorithm

Subdivision PhaseFor each box B:

C0(B)⇒ discard

¬Cxy(B)⇒ subdivide B

Construction PhaseDetermine intersections on boundary

Connect the intersections

(Non-trivial, unbounded complexity)

Boundary Analysis is not good (may not even terminate).

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 60 / 113

Page 357: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

Idea of Plantinga and VegterIntroduce a strong predicate C1 predicate

Allow local NON-isotopyLocal incursion and excursions

B

B′

B

B′

Locally, graph is not isotopic

Simple box geometry(simpler than Snyder, less simple than Marching Cube)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 61 / 113

Page 358: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

Plantinga and Vegter’s Algorithm

Exploit the global isotopy

Subdivision Phase: For each box B: C0(B)⇒ discard ¬C1(B)⇒ subdivide B

Refinement Phase: Balance!

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 62 / 113

Page 359: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Review of Subdivision Algorithms

(contd.) Plantinga and Vegter’s Algorithm

Global, not local, isotopy

Construction Phase:

(b)

+

+

+

+

+

+

+

+

+

(e)

++

+ −

−+

(f)(d)

+−

(c)

+

(a)

+

− +

+

+

Figure: Extended Rules

Local isotopy is NOT good !

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 63 / 113

Page 360: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Cxy Algorithm

Coming Up Next

6 Introduction

7 Review of Subdivision Algorithms

8 Cxy Algorithm

9 Extensions of Cxy

10 How to treat Boundary

11 How to treat Singularity

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 64 / 113

Page 361: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Cxy Algorithm

Idea of Cxy Algorithm

Replace C1 by CxyC1(B) implies Cxy(B)

This would produce fewer boxes.

Exploit local non-isotopyLocal isotopy is an artifact!

This also avoid boundary analysis.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 65 / 113

Page 362: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Cxy Algorithm

Obstructions to Cxy Idea

Replace C1 by CxyJust run PV Algorithm but using Cxy instead:

What can go wrong?

x

y

(b)

(a)

positive corner

vertexB2B1

negative corner

KEY:

B′2 B′1

(−5,−1)

(5,1)

Figure: Elongated hyperbola

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 66 / 113

Page 363: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Cxy Algorithm

Cxy AlgorithmSubdivision and Refinement Phases: As beforeConstruction Phase:

(full-split)

− +

+

(a)

+/−

+

+

+ +

(c’)

+ +

+

+ − +

+ +

(c”)

+ +−

+

+

+ − +

+ −(b’)

+ +

+

+ − +

+ −

+ +

(b)

+

+ − +

+ +

(c)

+ +

+

+

+ − +

Figure: Resolution of Ambiguity

Nontrivial proof of correctnessYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 67 / 113

Page 364: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

What has Cxy Algorithm done? Exploit Parametrizability (like Snyder) Rejected local isotopy (like PV)

Up Next: More improvements

Page 365: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

What has Cxy Algorithm done? Exploit Parametrizability (like Snyder) Rejected local isotopy (like PV)

Up Next: More improvements

Page 366: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

What has Cxy Algorithm done? Exploit Parametrizability (like Snyder) Rejected local isotopy (like PV)

Up Next: More improvements

Page 367: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

What has Cxy Algorithm done? Exploit Parametrizability (like Snyder) Rejected local isotopy (like PV)

Up Next: More improvements

Page 368: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

What has Cxy Algorithm done? Exploit Parametrizability (like Snyder) Rejected local isotopy (like PV)

Up Next: More improvements

Page 369: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

What has Cxy Algorithm done? Exploit Parametrizability (like Snyder) Rejected local isotopy (like PV)

Up Next: More improvements

Page 370: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Extensions of Cxy

Coming Up Next

6 Introduction

7 Review of Subdivision Algorithms

8 Cxy Algorithm

9 Extensions of Cxy

10 How to treat Boundary

11 How to treat Singularity

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 69 / 113

Page 371: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Extensions of Cxy

Idea of Rectangular Cxy Algorithm

Exploit Anisotropy

(b) PV (c) Snyder

(d) Balanced Cxy (e) Rectangular Cxy

(a) Original Curve

“Heel Curve”X2Y 2−X +Y −1 = 0 inboxB = [(−2,−10),(10,2)]

Comparing PV, Snyder,Cxy, Rect Cxy

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 70 / 113

Page 372: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Extensions of Cxy

Partial Splits for Rectangles

Splits

Full-splits:B→ (B1,B2,B3,B4)

1

3

B14

4

B12

B342

B23

HorizontalHalf-split:

B→ (B12,B34)

Vertical Half-split:

B→ (B14,B23)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 71 / 113

Page 373: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Extensions of Cxy

Rectangular Cxy Algorithm

What is neededAspect Ratio Bound: r > 1 arbitrary but fixed.

Splitting Procedure: do full-split if none of these hold

L0 : C0(B),Cxy (B) TerminateLout : C0(B12),C0(B34),C0(B14),C0(B23) Half-splitLin : Cxy (B12),Cxy (B34),Cxy (B14),Cxy (B23) Half-split

Axis-dependent balancing: each node has a X -depth andY -depth.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 72 / 113

Page 374: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Extensions of Cxy

Rectangular Cxy Algorithm

What is neededAspect Ratio Bound: r > 1 arbitrary but fixed.

Splitting Procedure: do full-split if none of these hold

L0 : C0(B),Cxy (B) TerminateLout : C0(B12),C0(B34),C0(B14),C0(B23) Half-splitLin : Cxy (B12),Cxy (B34),Cxy (B14),Cxy (B23) Half-split

Axis-dependent balancing: each node has a X -depth andY -depth.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 72 / 113

Page 375: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Extensions of Cxy

Rectangular Cxy Algorithm

What is neededAspect Ratio Bound: r > 1 arbitrary but fixed.

Splitting Procedure: do full-split if none of these hold

L0 : C0(B),Cxy (B) TerminateLout : C0(B12),C0(B34),C0(B14),C0(B23) Half-splitLin : Cxy (B12),Cxy (B34),Cxy (B14),Cxy (B23) Half-split

Axis-dependent balancing: each node has a X -depth andY -depth.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 72 / 113

Page 376: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Extensions of Cxy

Rectangular Cxy Algorithm

What is neededAspect Ratio Bound: r > 1 arbitrary but fixed.

Splitting Procedure: do full-split if none of these hold

L0 : C0(B),Cxy (B) TerminateLout : C0(B12),C0(B34),C0(B14),C0(B23) Half-splitLin : Cxy (B12),Cxy (B34),Cxy (B14),Cxy (B23) Half-split

Axis-dependent balancing: each node has a X -depth andY -depth.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 72 / 113

Page 377: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Extensions of Cxy

Rectangular Cxy Algorithm

What is neededAspect Ratio Bound: r > 1 arbitrary but fixed.

Splitting Procedure: do full-split if none of these hold

L0 : C0(B),Cxy (B) TerminateLout : C0(B12),C0(B34),C0(B14),C0(B23) Half-splitLin : Cxy (B12),Cxy (B34),Cxy (B14),Cxy (B23) Half-split

Axis-dependent balancing: each node has a X -depth andY -depth.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 72 / 113

Page 378: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Extensions of Cxy

Rectangular Cxy Algorithm

What is neededAspect Ratio Bound: r > 1 arbitrary but fixed.

Splitting Procedure: do full-split if none of these hold

L0 : C0(B),Cxy (B) TerminateLout : C0(B12),C0(B34),C0(B14),C0(B23) Half-splitLin : Cxy (B12),Cxy (B34),Cxy (B14),Cxy (B23) Half-split

Axis-dependent balancing: each node has a X -depth andY -depth.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 72 / 113

Page 379: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Extensions of Cxy

Rectangular Cxy Algorithm

What is neededAspect Ratio Bound: r > 1 arbitrary but fixed.

Splitting Procedure: do full-split if none of these hold

L0 : C0(B),Cxy (B) TerminateLout : C0(B12),C0(B34),C0(B14),C0(B23) Half-splitLin : Cxy (B12),Cxy (B34),Cxy (B14),Cxy (B23) Half-split

Axis-dependent balancing: each node has a X -depth andY -depth.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 72 / 113

Page 380: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Extensions of Cxy

Rectangular Cxy Algorithm

What is neededAspect Ratio Bound: r > 1 arbitrary but fixed.

Splitting Procedure: do full-split if none of these hold

L0 : C0(B),Cxy (B) TerminateLout : C0(B12),C0(B34),C0(B14),C0(B23) Half-splitLin : Cxy (B12),Cxy (B34),Cxy (B14),Cxy (B23) Half-split

Axis-dependent balancing: each node has a X -depth andY -depth.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 72 / 113

Page 381: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Extensions of Cxy

Ensuring Geometric Accuracy

Buffer Property of C1 predicateAspect Ratio ≤ 2:

a b w

S

va′

b′

q

u

p

B

e

Half-circle argument

Generalize C1(B) to C∗1(B). for any box B

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 73 / 113

Page 382: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Extensions of Cxy

Comparisons

Compare Rect Cxy to PV (note: Snyder has degeneracy). Curve X(XY −1) = 0, box Bs := [(−s,−s),(s,s)], Aspect ratio

bound r = 5: (JSO=Java stack overflow)

Increasing r can increase the performance of Rect Cxy. r = 80,s = 100⇒ Boxes/Time(ms) = 751/78

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 74 / 113

Page 383: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Extensions of Cxy

Comparisons (2)

Compare to Snyder’s Algorithm. Curve X(XY −1) = 0, box

Bn := [(−14×10n,−14×10n),(15×10n,15×10n)]. Maximumaspect ratio r = 257.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 75 / 113

Page 384: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Extensions of Cxy

Comparisons (2)

Compare to Snyder’s Algorithm. Curve X(XY −1) = 0, box

Bn := [(−14×10n,−14×10n),(15×10n,15×10n)]. Maximumaspect ratio r = 257.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 75 / 113

Page 385: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Extensions of Cxy

Comparisons (2)

Compare to Snyder’s Algorithm. Curve X(XY −1) = 0, box

Bn := [(−14×10n,−14×10n),(15×10n,15×10n)]. Maximumaspect ratio r = 257.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 75 / 113

Page 386: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Extensions of Cxy

Summary of Experimental Results

Cxy combines the advantages of Snyder & PV Algorithms.

Can be significantly faster than PV & Snyder’s algorithm.

Rectangular Cxy Algorithm can be significantly faster thanBalanced Cxy algorithm.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 76 / 113

Page 387: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Boundary

Coming Up Next

6 Introduction

7 Review of Subdivision Algorithms

8 Cxy Algorithm

9 Extensions of Cxy

10 How to treat Boundary

11 How to treat Singularity

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 77 / 113

Page 388: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Boundary

Boundary (Summary)

An Obvious Way and a Better Way Exact Way : Recursively solve the problem on ∂B0

Better Way : Exploit isotopy

Price for Better Way: Weaker Correctness StatementFor some B0 ⊆ B+

0 ⊆ B0⊕B(ε),G is isotopic to S∩B+

0 .

APPLICATIONS: Singularity (below) Input region B0 to have “any” geometry, even holes, provided it

contains no singularities.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 78 / 113

Page 389: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Boundary

Boundary (Summary)

An Obvious Way and a Better Way Exact Way : Recursively solve the problem on ∂B0

Better Way : Exploit isotopy

Price for Better Way: Weaker Correctness StatementFor some B0 ⊆ B+

0 ⊆ B0⊕B(ε),G is isotopic to S∩B+

0 .

APPLICATIONS: Singularity (below) Input region B0 to have “any” geometry, even holes, provided it

contains no singularities.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 78 / 113

Page 390: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Boundary

Boundary (Summary)

An Obvious Way and a Better Way Exact Way : Recursively solve the problem on ∂B0

Better Way : Exploit isotopy

Price for Better Way: Weaker Correctness StatementFor some B0 ⊆ B+

0 ⊆ B0⊕B(ε),G is isotopic to S∩B+

0 .

APPLICATIONS: Singularity (below) Input region B0 to have “any” geometry, even holes, provided it

contains no singularities.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 78 / 113

Page 391: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Boundary

Boundary (Summary)

An Obvious Way and a Better Way Exact Way : Recursively solve the problem on ∂B0

Better Way : Exploit isotopy

Price for Better Way: Weaker Correctness StatementFor some B0 ⊆ B+

0 ⊆ B0⊕B(ε),G is isotopic to S∩B+

0 .

APPLICATIONS: Singularity (below) Input region B0 to have “any” geometry, even holes, provided it

contains no singularities.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 78 / 113

Page 392: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Boundary

Boundary (Summary)

An Obvious Way and a Better Way Exact Way : Recursively solve the problem on ∂B0

Better Way : Exploit isotopy

Price for Better Way: Weaker Correctness StatementFor some B0 ⊆ B+

0 ⊆ B0⊕B(ε),G is isotopic to S∩B+

0 .

APPLICATIONS: Singularity (below) Input region B0 to have “any” geometry, even holes, provided it

contains no singularities.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 78 / 113

Page 393: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Boundary

Boundary (Summary)

An Obvious Way and a Better Way Exact Way : Recursively solve the problem on ∂B0

Better Way : Exploit isotopy

Price for Better Way: Weaker Correctness StatementFor some B0 ⊆ B+

0 ⊆ B0⊕B(ε),G is isotopic to S∩B+

0 .

APPLICATIONS: Singularity (below) Input region B0 to have “any” geometry, even holes, provided it

contains no singularities.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 78 / 113

Page 394: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Boundary

Boundary (Summary)

An Obvious Way and a Better Way Exact Way : Recursively solve the problem on ∂B0

Better Way : Exploit isotopy

Price for Better Way: Weaker Correctness StatementFor some B0 ⊆ B+

0 ⊆ B0⊕B(ε),G is isotopic to S∩B+

0 .

APPLICATIONS: Singularity (below) Input region B0 to have “any” geometry, even holes, provided it

contains no singularities.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 78 / 113

Page 395: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Boundary

Boundary (Summary)

An Obvious Way and a Better Way Exact Way : Recursively solve the problem on ∂B0

Better Way : Exploit isotopy

Price for Better Way: Weaker Correctness StatementFor some B0 ⊆ B+

0 ⊆ B0⊕B(ε),G is isotopic to S∩B+

0 .

APPLICATIONS: Singularity (below) Input region B0 to have “any” geometry, even holes, provided it

contains no singularities.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 78 / 113

Page 396: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Boundary

Boundary (Summary)

An Obvious Way and a Better Way Exact Way : Recursively solve the problem on ∂B0

Better Way : Exploit isotopy

Price for Better Way: Weaker Correctness StatementFor some B0 ⊆ B+

0 ⊆ B0⊕B(ε),G is isotopic to S∩B+

0 .

APPLICATIONS: Singularity (below) Input region B0 to have “any” geometry, even holes, provided it

contains no singularities.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 78 / 113

Page 397: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Boundary

Boundary (Summary)

An Obvious Way and a Better Way Exact Way : Recursively solve the problem on ∂B0

Better Way : Exploit isotopy

Price for Better Way: Weaker Correctness StatementFor some B0 ⊆ B+

0 ⊆ B0⊕B(ε),G is isotopic to S∩B+

0 .

APPLICATIONS: Singularity (below) Input region B0 to have “any” geometry, even holes, provided it

contains no singularities.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 78 / 113

Page 398: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Singularity

Coming Up Next

6 Introduction

7 Review of Subdivision Algorithms

8 Cxy Algorithm

9 Extensions of Cxy

10 How to treat Boundary

11 How to treat Singularity

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 79 / 113

Page 399: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Singularity

Singularity : Algebraic Preliminary

Square-free part of f (X1, . . . ,Xn) ∈ Z[X1, . . . ,Xn]:f

GCD(f ,∂1f ,...,∂nf )= f

GCD(f ,∇(f ))

For n = 1: square-free implies no singularities

Generally:Singular set sing(f ) := Zero(f ,∇(f )) has co-dimension ≥ 2.

For Curves:we now assume f (X ,Y ) ∈Z[X ,Y ] has isolated singularities.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 80 / 113

Page 400: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Singularity

Singularity : Algebraic Preliminary

Square-free part of f (X1, . . . ,Xn) ∈ Z[X1, . . . ,Xn]:f

GCD(f ,∂1f ,...,∂nf )= f

GCD(f ,∇(f ))

For n = 1: square-free implies no singularities

Generally:Singular set sing(f ) := Zero(f ,∇(f )) has co-dimension ≥ 2.

For Curves:we now assume f (X ,Y ) ∈Z[X ,Y ] has isolated singularities.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 80 / 113

Page 401: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Singularity

Singularity : Algebraic Preliminary

Square-free part of f (X1, . . . ,Xn) ∈ Z[X1, . . . ,Xn]:f

GCD(f ,∂1f ,...,∂nf )= f

GCD(f ,∇(f ))

For n = 1: square-free implies no singularities

Generally:Singular set sing(f ) := Zero(f ,∇(f )) has co-dimension ≥ 2.

For Curves:we now assume f (X ,Y ) ∈Z[X ,Y ] has isolated singularities.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 80 / 113

Page 402: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Singularity

Singularity : Algebraic Preliminary

Square-free part of f (X1, . . . ,Xn) ∈ Z[X1, . . . ,Xn]:f

GCD(f ,∂1f ,...,∂nf )= f

GCD(f ,∇(f ))

For n = 1: square-free implies no singularities

Generally:Singular set sing(f ) := Zero(f ,∇(f )) has co-dimension ≥ 2.

For Curves:we now assume f (X ,Y ) ∈Z[X ,Y ] has isolated singularities.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 80 / 113

Page 403: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Singularity

Singularity : Algebraic Preliminary

Square-free part of f (X1, . . . ,Xn) ∈ Z[X1, . . . ,Xn]:f

GCD(f ,∂1f ,...,∂nf )= f

GCD(f ,∇(f ))

For n = 1: square-free implies no singularities

Generally:Singular set sing(f ) := Zero(f ,∇(f )) has co-dimension ≥ 2.

For Curves:we now assume f (X ,Y ) ∈Z[X ,Y ] has isolated singularities.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 80 / 113

Page 404: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Singularity

Singularity : Algebraic Preliminary

Square-free part of f (X1, . . . ,Xn) ∈ Z[X1, . . . ,Xn]:f

GCD(f ,∂1f ,...,∂nf )= f

GCD(f ,∇(f ))

For n = 1: square-free implies no singularities

Generally:Singular set sing(f ) := Zero(f ,∇(f )) has co-dimension ≥ 2.

For Curves:we now assume f (X ,Y ) ∈Z[X ,Y ] has isolated singularities.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 80 / 113

Page 405: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Singularity

Some Zero BoundsEvaluation Bound LemmaIf f (X ,Y ) has degree d and height L then

− logEV (f ) = O(d2(L+d logd))

where EV (f ) := min|f (α)| : ∇(α) = 0, f (α) 6= 0

Singularity Separation Bound [Y. (2006)]

Any two singularities of f = 0 are separated by

δ3 ≥ (16d+2256L812dd5)−d

Closest Approach BoundThe “locally closest” approach of a curve f = 0 to its own singularities is

δ4 ≥ (62e7)−30D(44 ·5 ·2L)−5D4

where D = max2,deg fYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 81 / 113

Page 406: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Singularity

Some Zero BoundsEvaluation Bound LemmaIf f (X ,Y ) has degree d and height L then

− logEV (f ) = O(d2(L+d logd))

where EV (f ) := min|f (α)| : ∇(α) = 0, f (α) 6= 0

Singularity Separation Bound [Y. (2006)]

Any two singularities of f = 0 are separated by

δ3 ≥ (16d+2256L812dd5)−d

Closest Approach BoundThe “locally closest” approach of a curve f = 0 to its own singularities is

δ4 ≥ (62e7)−30D(44 ·5 ·2L)−5D4

where D = max2,deg fYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 81 / 113

Page 407: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Singularity

Some Zero BoundsEvaluation Bound LemmaIf f (X ,Y ) has degree d and height L then

− logEV (f ) = O(d2(L+d logd))

where EV (f ) := min|f (α)| : ∇(α) = 0, f (α) 6= 0

Singularity Separation Bound [Y. (2006)]

Any two singularities of f = 0 are separated by

δ3 ≥ (16d+2256L812dd5)−d

Closest Approach BoundThe “locally closest” approach of a curve f = 0 to its own singularities is

δ4 ≥ (62e7)−30D(44 ·5 ·2L)−5D4

where D = max2,deg fYap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 81 / 113

Page 408: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Singularity

Isolating Singularities

Mountain Pass TheoremConsider F := f 2 + f 2

X + f 2Y .

Any 2 singularities in B0 are connected by paths γ : [0,1]→R2

satisfyingminγ(F([0,1])) ≥ ε0

where

ε0 := minEV (f ),min F(∂B0)

Can provide a subdivision algorithm using F ,ε0 to isolate regionscontaining singularities.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 82 / 113

Page 409: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Singularity

Isolating Singularities

Mountain Pass TheoremConsider F := f 2 + f 2

X + f 2Y .

Any 2 singularities in B0 are connected by paths γ : [0,1]→R2

satisfyingminγ(F([0,1])) ≥ ε0

where

ε0 := minEV (f ),min F(∂B0)

Can provide a subdivision algorithm using F ,ε0 to isolate regionscontaining singularities.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 82 / 113

Page 410: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Singularity

Isolating Singularities

Mountain Pass TheoremConsider F := f 2 + f 2

X + f 2Y .

Any 2 singularities in B0 are connected by paths γ : [0,1]→R2

satisfyingminγ(F([0,1])) ≥ ε0

where

ε0 := minEV (f ),min F(∂B0)

Can provide a subdivision algorithm using F ,ε0 to isolate regionscontaining singularities.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 82 / 113

Page 411: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

How to treat Singularity

Degree of Singularites

Degree of singularity := number of half-branches

Use two concentric boxes B2 ⊆ B1:inner box has singularity, outer radius less than δ3,δ4

p

(3)

(1)

(2)

(2)

(1)

B1

B2

(b)(a)

(a) Singularity p with3 types of components

(b) Concentric boxes(B1,B2)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 83 / 113

Page 412: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

We have seen how to combine Snyder and PV, and make severalpractical improvements

Future Work: Extend 3D (and beyond?)

Improve efficiency of refinement

Improve efficiency of singularity Nonsingular case is fast Singular case is (currently) not fast

Page 413: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

We have seen how to combine Snyder and PV, and make severalpractical improvements

Future Work: Extend 3D (and beyond?)

Improve efficiency of refinement

Improve efficiency of singularity Nonsingular case is fast Singular case is (currently) not fast

Page 414: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

We have seen how to combine Snyder and PV, and make severalpractical improvements

Future Work: Extend 3D (and beyond?)

Improve efficiency of refinement

Improve efficiency of singularity Nonsingular case is fast Singular case is (currently) not fast

Page 415: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

We have seen how to combine Snyder and PV, and make severalpractical improvements

Future Work: Extend 3D (and beyond?)

Improve efficiency of refinement

Improve efficiency of singularity Nonsingular case is fast Singular case is (currently) not fast

Page 416: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

We have seen how to combine Snyder and PV, and make severalpractical improvements

Future Work: Extend 3D (and beyond?)

Improve efficiency of refinement

Improve efficiency of singularity Nonsingular case is fast Singular case is (currently) not fast

Page 417: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

We have seen how to combine Snyder and PV, and make severalpractical improvements

Future Work: Extend 3D (and beyond?)

Improve efficiency of refinement

Improve efficiency of singularity Nonsingular case is fast Singular case is (currently) not fast

Page 418: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

We have seen how to combine Snyder and PV, and make severalpractical improvements

Future Work: Extend 3D (and beyond?)

Improve efficiency of refinement

Improve efficiency of singularity Nonsingular case is fast Singular case is (currently) not fast

Page 419: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

We have seen how to combine Snyder and PV, and make severalpractical improvements

Future Work: Extend 3D (and beyond?)

Improve efficiency of refinement

Improve efficiency of singularity Nonsingular case is fast Singular case is (currently) not fast

Page 420: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

We have seen how to combine Snyder and PV, and make severalpractical improvements

Future Work: Extend 3D (and beyond?)

Improve efficiency of refinement

Improve efficiency of singularity Nonsingular case is fast Singular case is (currently) not fast

Page 421: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 2

Problems at the interface of continuous and discrete:Explicitization Problems

ENC Algorithms for them are novel

Numerical Treatment of Singularity and Degeneracy Possible in theory, but severe practical challenge

Page 422: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 2

Problems at the interface of continuous and discrete:Explicitization Problems

ENC Algorithms for them are novel

Numerical Treatment of Singularity and Degeneracy Possible in theory, but severe practical challenge

Page 423: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 2

Problems at the interface of continuous and discrete:Explicitization Problems

ENC Algorithms for them are novel

Numerical Treatment of Singularity and Degeneracy Possible in theory, but severe practical challenge

Page 424: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 2

Problems at the interface of continuous and discrete:Explicitization Problems

ENC Algorithms for them are novel

Numerical Treatment of Singularity and Degeneracy Possible in theory, but severe practical challenge

Page 425: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 2

Problems at the interface of continuous and discrete:Explicitization Problems

ENC Algorithms for them are novel

Numerical Treatment of Singularity and Degeneracy Possible in theory, but severe practical challenge

Page 426: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 2

Problems at the interface of continuous and discrete:Explicitization Problems

ENC Algorithms for them are novel

Numerical Treatment of Singularity and Degeneracy Possible in theory, but severe practical challenge

Page 427: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

PART 3

Complexity Analysis of Adaptivity

“A rapacious monster lurks within every computer,and it dines exclusively on accurate digits.”

— B.D. McCullough (2000)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 86 / 113

Page 428: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Coming Up Next

12 Analysis of Adaptive Complexity

13 Analysis of Descartes Method

14 Integral Bounds and Framework of Stopping Functions

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 87 / 113

Page 429: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Towards Analysis of Adaptive Algorithms

Major Challenge in Theoretical Computer Science Analysis of discrete algorithms is highly developed What about continuous , adaptive algorithms?

Previous such analysis requires probabilistic assumptions. Basically in Linear Programming: [Smale, Borgwardt,

Teng-Spielman]

We focus on the recursion tree size Return to 1-D !

Adaptive algorithms may have some deep paths, but overall sizeis only polynomial in depth.

Previous (trivial) result – size is exponential in depth [Kearfott(1987)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 88 / 113

Page 430: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Towards Analysis of Adaptive Algorithms

Major Challenge in Theoretical Computer Science Analysis of discrete algorithms is highly developed What about continuous , adaptive algorithms?

Previous such analysis requires probabilistic assumptions. Basically in Linear Programming: [Smale, Borgwardt,

Teng-Spielman]

We focus on the recursion tree size Return to 1-D !

Adaptive algorithms may have some deep paths, but overall sizeis only polynomial in depth.

Previous (trivial) result – size is exponential in depth [Kearfott(1987)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 88 / 113

Page 431: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Towards Analysis of Adaptive Algorithms

Major Challenge in Theoretical Computer Science Analysis of discrete algorithms is highly developed What about continuous , adaptive algorithms?

Previous such analysis requires probabilistic assumptions. Basically in Linear Programming: [Smale, Borgwardt,

Teng-Spielman]

We focus on the recursion tree size Return to 1-D !

Adaptive algorithms may have some deep paths, but overall sizeis only polynomial in depth.

Previous (trivial) result – size is exponential in depth [Kearfott(1987)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 88 / 113

Page 432: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Towards Analysis of Adaptive Algorithms

Major Challenge in Theoretical Computer Science Analysis of discrete algorithms is highly developed What about continuous , adaptive algorithms?

Previous such analysis requires probabilistic assumptions. Basically in Linear Programming: [Smale, Borgwardt,

Teng-Spielman]

We focus on the recursion tree size Return to 1-D !

Adaptive algorithms may have some deep paths, but overall sizeis only polynomial in depth.

Previous (trivial) result – size is exponential in depth [Kearfott(1987)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 88 / 113

Page 433: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Towards Analysis of Adaptive Algorithms

Major Challenge in Theoretical Computer Science Analysis of discrete algorithms is highly developed What about continuous , adaptive algorithms?

Previous such analysis requires probabilistic assumptions. Basically in Linear Programming: [Smale, Borgwardt,

Teng-Spielman]

We focus on the recursion tree size Return to 1-D !

Adaptive algorithms may have some deep paths, but overall sizeis only polynomial in depth.

Previous (trivial) result – size is exponential in depth [Kearfott(1987)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 88 / 113

Page 434: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Towards Analysis of Adaptive Algorithms

Major Challenge in Theoretical Computer Science Analysis of discrete algorithms is highly developed What about continuous , adaptive algorithms?

Previous such analysis requires probabilistic assumptions. Basically in Linear Programming: [Smale, Borgwardt,

Teng-Spielman]

We focus on the recursion tree size Return to 1-D !

Adaptive algorithms may have some deep paths, but overall sizeis only polynomial in depth.

Previous (trivial) result – size is exponential in depth [Kearfott(1987)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 88 / 113

Page 435: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Towards Analysis of Adaptive Algorithms

Major Challenge in Theoretical Computer Science Analysis of discrete algorithms is highly developed What about continuous , adaptive algorithms?

Previous such analysis requires probabilistic assumptions. Basically in Linear Programming: [Smale, Borgwardt,

Teng-Spielman]

We focus on the recursion tree size Return to 1-D !

Adaptive algorithms may have some deep paths, but overall sizeis only polynomial in depth.

Previous (trivial) result – size is exponential in depth [Kearfott(1987)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 88 / 113

Page 436: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Towards Analysis of Adaptive Algorithms

Major Challenge in Theoretical Computer Science Analysis of discrete algorithms is highly developed What about continuous , adaptive algorithms?

Previous such analysis requires probabilistic assumptions. Basically in Linear Programming: [Smale, Borgwardt,

Teng-Spielman]

We focus on the recursion tree size Return to 1-D !

Adaptive algorithms may have some deep paths, but overall sizeis only polynomial in depth.

Previous (trivial) result – size is exponential in depth [Kearfott(1987)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 88 / 113

Page 437: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Towards Analysis of Adaptive Algorithms

Major Challenge in Theoretical Computer Science Analysis of discrete algorithms is highly developed What about continuous , adaptive algorithms?

Previous such analysis requires probabilistic assumptions. Basically in Linear Programming: [Smale, Borgwardt,

Teng-Spielman]

We focus on the recursion tree size Return to 1-D !

Adaptive algorithms may have some deep paths, but overall sizeis only polynomial in depth.

Previous (trivial) result – size is exponential in depth [Kearfott(1987)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 88 / 113

Page 438: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Towards Analysis of Adaptive Algorithms

Major Challenge in Theoretical Computer Science Analysis of discrete algorithms is highly developed What about continuous , adaptive algorithms?

Previous such analysis requires probabilistic assumptions. Basically in Linear Programming: [Smale, Borgwardt,

Teng-Spielman]

We focus on the recursion tree size Return to 1-D !

Adaptive algorithms may have some deep paths, but overall sizeis only polynomial in depth.

Previous (trivial) result – size is exponential in depth [Kearfott(1987)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 88 / 113

Page 439: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Towards Analysis of Adaptive Algorithms

Major Challenge in Theoretical Computer Science Analysis of discrete algorithms is highly developed What about continuous , adaptive algorithms?

Previous such analysis requires probabilistic assumptions. Basically in Linear Programming: [Smale, Borgwardt,

Teng-Spielman]

We focus on the recursion tree size Return to 1-D !

Adaptive algorithms may have some deep paths, but overall sizeis only polynomial in depth.

Previous (trivial) result – size is exponential in depth [Kearfott(1987)]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 88 / 113

Page 440: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Analytic Approach to Root Isolation

Suppose you want to isolate real roots of f (x) in I = [a,b]

Midpoint m(I) := (a+b)/2, Width w(I) := b−a

Exclusion Predicate: C0(I) : |f (m)|> ∑i≥1|f (i)(m)|

i!

(w(I)

2

)i

Inclusion Predicate: C1(I) : |f ′(m)|> ∑i≥1|f (i+1)(m)|

i!

(w(I)

2

)i

Confirmation (Bolzano) Test: f (a)f (b) < 0

Simple analytic method for root isolation!

Simpler than algebraic subdivision methods:

STURM > DESCARTES > BOLZANO

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 89 / 113

Page 441: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Analytic Approach to Root Isolation

Suppose you want to isolate real roots of f (x) in I = [a,b]

Midpoint m(I) := (a+b)/2, Width w(I) := b−a

Exclusion Predicate: C0(I) : |f (m)|> ∑i≥1|f (i)(m)|

i!

(w(I)

2

)i

Inclusion Predicate: C1(I) : |f ′(m)|> ∑i≥1|f (i+1)(m)|

i!

(w(I)

2

)i

Confirmation (Bolzano) Test: f (a)f (b) < 0

Simple analytic method for root isolation!

Simpler than algebraic subdivision methods:

STURM > DESCARTES > BOLZANO

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 89 / 113

Page 442: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Analytic Approach to Root Isolation

Suppose you want to isolate real roots of f (x) in I = [a,b]

Midpoint m(I) := (a+b)/2, Width w(I) := b−a

Exclusion Predicate: C0(I) : |f (m)|> ∑i≥1|f (i)(m)|

i!

(w(I)

2

)i

Inclusion Predicate: C1(I) : |f ′(m)|> ∑i≥1|f (i+1)(m)|

i!

(w(I)

2

)i

Confirmation (Bolzano) Test: f (a)f (b) < 0

Simple analytic method for root isolation!

Simpler than algebraic subdivision methods:

STURM > DESCARTES > BOLZANO

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 89 / 113

Page 443: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Analytic Approach to Root Isolation

Suppose you want to isolate real roots of f (x) in I = [a,b]

Midpoint m(I) := (a+b)/2, Width w(I) := b−a

Exclusion Predicate: C0(I) : |f (m)|> ∑i≥1|f (i)(m)|

i!

(w(I)

2

)i

Inclusion Predicate: C1(I) : |f ′(m)|> ∑i≥1|f (i+1)(m)|

i!

(w(I)

2

)i

Confirmation (Bolzano) Test: f (a)f (b) < 0

Simple analytic method for root isolation!

Simpler than algebraic subdivision methods:

STURM > DESCARTES > BOLZANO

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 89 / 113

Page 444: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Analytic Approach to Root Isolation

Suppose you want to isolate real roots of f (x) in I = [a,b]

Midpoint m(I) := (a+b)/2, Width w(I) := b−a

Exclusion Predicate: C0(I) : |f (m)|> ∑i≥1|f (i)(m)|

i!

(w(I)

2

)i

Inclusion Predicate: C1(I) : |f ′(m)|> ∑i≥1|f (i+1)(m)|

i!

(w(I)

2

)i

Confirmation (Bolzano) Test: f (a)f (b) < 0

Simple analytic method for root isolation!

Simpler than algebraic subdivision methods:

STURM > DESCARTES > BOLZANO

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 89 / 113

Page 445: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Analytic Approach to Root Isolation

Suppose you want to isolate real roots of f (x) in I = [a,b]

Midpoint m(I) := (a+b)/2, Width w(I) := b−a

Exclusion Predicate: C0(I) : |f (m)|> ∑i≥1|f (i)(m)|

i!

(w(I)

2

)i

Inclusion Predicate: C1(I) : |f ′(m)|> ∑i≥1|f (i+1)(m)|

i!

(w(I)

2

)i

Confirmation (Bolzano) Test: f (a)f (b) < 0

Simple analytic method for root isolation!

Simpler than algebraic subdivision methods:

STURM > DESCARTES > BOLZANO

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 89 / 113

Page 446: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Analytic Approach to Root Isolation

Suppose you want to isolate real roots of f (x) in I = [a,b]

Midpoint m(I) := (a+b)/2, Width w(I) := b−a

Exclusion Predicate: C0(I) : |f (m)|> ∑i≥1|f (i)(m)|

i!

(w(I)

2

)i

Inclusion Predicate: C1(I) : |f ′(m)|> ∑i≥1|f (i+1)(m)|

i!

(w(I)

2

)i

Confirmation (Bolzano) Test: f (a)f (b) < 0

Simple analytic method for root isolation!

Simpler than algebraic subdivision methods:

STURM > DESCARTES > BOLZANO

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 89 / 113

Page 447: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Analytic Approach to Root Isolation

Suppose you want to isolate real roots of f (x) in I = [a,b]

Midpoint m(I) := (a+b)/2, Width w(I) := b−a

Exclusion Predicate: C0(I) : |f (m)|> ∑i≥1|f (i)(m)|

i!

(w(I)

2

)i

Inclusion Predicate: C1(I) : |f ′(m)|> ∑i≥1|f (i+1)(m)|

i!

(w(I)

2

)i

Confirmation (Bolzano) Test: f (a)f (b) < 0

Simple analytic method for root isolation!

Simpler than algebraic subdivision methods:

STURM > DESCARTES > BOLZANO

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 89 / 113

Page 448: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Analytic Approach to Root Isolation

Suppose you want to isolate real roots of f (x) in I = [a,b]

Midpoint m(I) := (a+b)/2, Width w(I) := b−a

Exclusion Predicate: C0(I) : |f (m)|> ∑i≥1|f (i)(m)|

i!

(w(I)

2

)i

Inclusion Predicate: C1(I) : |f ′(m)|> ∑i≥1|f (i+1)(m)|

i!

(w(I)

2

)i

Confirmation (Bolzano) Test: f (a)f (b) < 0

Simple analytic method for root isolation!

Simpler than algebraic subdivision methods:

STURM > DESCARTES > BOLZANO

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 89 / 113

Page 449: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

EVAL Algorithm

EVALINPUT: Function f and interval I0 = [a,b]

OUTPUT: Isolation intervals of roots of f in I01 Let Qin← I0 be a queue2 WHILE (Q 6= /0) ⊳ Subdivision Phase3 I← Q.remove()4 IF (C0(I) holds), discard I5 ELIF (C1(I) holds), output I6 ELSE7 IF (f (m(I)) = 0), output [m(I),m(I)]8 Split I into two and insert in Q9 PROCESS output list ⊳ Consruction Phase

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 90 / 113

Page 450: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

EVAL Algorithm

EVALINPUT: Function f and interval I0 = [a,b]

OUTPUT: Isolation intervals of roots of f in I01 Let Qin← I0 be a queue2 WHILE (Q 6= /0) ⊳ Subdivision Phase3 I← Q.remove()4 IF (C0(I) holds), discard I5 ELIF (C1(I) holds), output I6 ELSE7 IF (f (m(I)) = 0), output [m(I),m(I)]8 Split I into two and insert in Q9 PROCESS output list ⊳ Consruction Phase

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 90 / 113

Page 451: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

EVAL Algorithm

EVALINPUT: Function f and interval I0 = [a,b]

OUTPUT: Isolation intervals of roots of f in I01 Let Qin← I0 be a queue2 WHILE (Q 6= /0) ⊳ Subdivision Phase3 I← Q.remove()4 IF (C0(I) holds), discard I5 ELIF (C1(I) holds), output I6 ELSE7 IF (f (m(I)) = 0), output [m(I),m(I)]8 Split I into two and insert in Q9 PROCESS output list ⊳ Consruction Phase

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 90 / 113

Page 452: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

EVAL Algorithm

EVALINPUT: Function f and interval I0 = [a,b]

OUTPUT: Isolation intervals of roots of f in I01 Let Qin← I0 be a queue2 WHILE (Q 6= /0) ⊳ Subdivision Phase3 I← Q.remove()4 IF (C0(I) holds), discard I5 ELIF (C1(I) holds), output I6 ELSE7 IF (f (m(I)) = 0), output [m(I),m(I)]8 Split I into two and insert in Q9 PROCESS output list ⊳ Consruction Phase

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 90 / 113

Page 453: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

EVAL Algorithm

EVALINPUT: Function f and interval I0 = [a,b]

OUTPUT: Isolation intervals of roots of f in I01 Let Qin← I0 be a queue2 WHILE (Q 6= /0) ⊳ Subdivision Phase3 I← Q.remove()4 IF (C0(I) holds), discard I5 ELIF (C1(I) holds), output I6 ELSE7 IF (f (m(I)) = 0), output [m(I),m(I)]8 Split I into two and insert in Q9 PROCESS output list ⊳ Consruction Phase

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 90 / 113

Page 454: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

EVAL Algorithm

EVALINPUT: Function f and interval I0 = [a,b]

OUTPUT: Isolation intervals of roots of f in I01 Let Qin← I0 be a queue2 WHILE (Q 6= /0) ⊳ Subdivision Phase3 I← Q.remove()4 IF (C0(I) holds), discard I5 ELIF (C1(I) holds), output I6 ELSE7 IF (f (m(I)) = 0), output [m(I),m(I)]8 Split I into two and insert in Q9 PROCESS output list ⊳ Consruction Phase

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 90 / 113

Page 455: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

EVAL Algorithm

EVALINPUT: Function f and interval I0 = [a,b]

OUTPUT: Isolation intervals of roots of f in I01 Let Qin← I0 be a queue2 WHILE (Q 6= /0) ⊳ Subdivision Phase3 I← Q.remove()4 IF (C0(I) holds), discard I5 ELIF (C1(I) holds), output I6 ELSE7 IF (f (m(I)) = 0), output [m(I),m(I)]8 Split I into two and insert in Q9 PROCESS output list ⊳ Consruction Phase

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 90 / 113

Page 456: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

EVAL Algorithm

EVALINPUT: Function f and interval I0 = [a,b]

OUTPUT: Isolation intervals of roots of f in I01 Let Qin← I0 be a queue2 WHILE (Q 6= /0) ⊳ Subdivision Phase3 I← Q.remove()4 IF (C0(I) holds), discard I5 ELIF (C1(I) holds), output I6 ELSE7 IF (f (m(I)) = 0), output [m(I),m(I)]8 Split I into two and insert in Q9 PROCESS output list ⊳ Consruction Phase

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 90 / 113

Page 457: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

EVAL Algorithm

EVALINPUT: Function f and interval I0 = [a,b]

OUTPUT: Isolation intervals of roots of f in I01 Let Qin← I0 be a queue2 WHILE (Q 6= /0) ⊳ Subdivision Phase3 I← Q.remove()4 IF (C0(I) holds), discard I5 ELIF (C1(I) holds), output I6 ELSE7 IF (f (m(I)) = 0), output [m(I),m(I)]8 Split I into two and insert in Q9 PROCESS output list ⊳ Consruction Phase

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 90 / 113

Page 458: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

EVAL Algorithm

EVALINPUT: Function f and interval I0 = [a,b]

OUTPUT: Isolation intervals of roots of f in I01 Let Qin← I0 be a queue2 WHILE (Q 6= /0) ⊳ Subdivision Phase3 I← Q.remove()4 IF (C0(I) holds), discard I5 ELIF (C1(I) holds), output I6 ELSE7 IF (f (m(I)) = 0), output [m(I),m(I)]8 Split I into two and insert in Q9 PROCESS output list ⊳ Consruction Phase

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 90 / 113

Page 459: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

EVAL Algorithm

EVALINPUT: Function f and interval I0 = [a,b]

OUTPUT: Isolation intervals of roots of f in I01 Let Qin← I0 be a queue2 WHILE (Q 6= /0) ⊳ Subdivision Phase3 I← Q.remove()4 IF (C0(I) holds), discard I5 ELIF (C1(I) holds), output I6 ELSE7 IF (f (m(I)) = 0), output [m(I),m(I)]8 Split I into two and insert in Q9 PROCESS output list ⊳ Consruction Phase

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 90 / 113

Page 460: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

EVAL Algorithm

EVALINPUT: Function f and interval I0 = [a,b]

OUTPUT: Isolation intervals of roots of f in I01 Let Qin← I0 be a queue2 WHILE (Q 6= /0) ⊳ Subdivision Phase3 I← Q.remove()4 IF (C0(I) holds), discard I5 ELIF (C1(I) holds), output I6 ELSE7 IF (f (m(I)) = 0), output [m(I),m(I)]8 Split I into two and insert in Q9 PROCESS output list ⊳ Consruction Phase

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 90 / 113

Page 461: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

EVAL Algorithm

EVALINPUT: Function f and interval I0 = [a,b]

OUTPUT: Isolation intervals of roots of f in I01 Let Qin← I0 be a queue2 WHILE (Q 6= /0) ⊳ Subdivision Phase3 I← Q.remove()4 IF (C0(I) holds), discard I5 ELIF (C1(I) holds), output I6 ELSE7 IF (f (m(I)) = 0), output [m(I),m(I)]8 Split I into two and insert in Q9 PROCESS output list ⊳ Consruction Phase

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 90 / 113

Page 462: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Main Complexity Goal – Benchmark Problem

Benchmark Problem in Root IsolationProblem: isolate ALL (real) roots of square-free f (X) ∈Z[X ] ofdegree ≤ d and height < 2L.

Highly classical problem: Bit complexity is O(d3L) [Schohage 1982].

⋆ Improvement: O(d2L) arithmetic complexity [Pan]

Sturm tree size is O(d(L+ logd)) [Davenport, 1985] Descartes tree size is Θ(d(L+ logd)) [Eigenwillig-Sharma-Y,

2006]

MAIN RESULT: Bolzano tree size is O(d2(L+ logd)) Sketch in this lecture. See [Burr-Krahmer-Y-Sagraloff, 2008-9]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 91 / 113

Page 463: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Main Complexity Goal – Benchmark Problem

Benchmark Problem in Root IsolationProblem: isolate ALL (real) roots of square-free f (X) ∈Z[X ] ofdegree ≤ d and height < 2L.

Highly classical problem: Bit complexity is O(d3L) [Schohage 1982].

⋆ Improvement: O(d2L) arithmetic complexity [Pan]

Sturm tree size is O(d(L+ logd)) [Davenport, 1985] Descartes tree size is Θ(d(L+ logd)) [Eigenwillig-Sharma-Y,

2006]

MAIN RESULT: Bolzano tree size is O(d2(L+ logd)) Sketch in this lecture. See [Burr-Krahmer-Y-Sagraloff, 2008-9]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 91 / 113

Page 464: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Main Complexity Goal – Benchmark Problem

Benchmark Problem in Root IsolationProblem: isolate ALL (real) roots of square-free f (X) ∈Z[X ] ofdegree ≤ d and height < 2L.

Highly classical problem: Bit complexity is O(d3L) [Schohage 1982].

⋆ Improvement: O(d2L) arithmetic complexity [Pan]

Sturm tree size is O(d(L+ logd)) [Davenport, 1985] Descartes tree size is Θ(d(L+ logd)) [Eigenwillig-Sharma-Y,

2006]

MAIN RESULT: Bolzano tree size is O(d2(L+ logd)) Sketch in this lecture. See [Burr-Krahmer-Y-Sagraloff, 2008-9]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 91 / 113

Page 465: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Main Complexity Goal – Benchmark Problem

Benchmark Problem in Root IsolationProblem: isolate ALL (real) roots of square-free f (X) ∈Z[X ] ofdegree ≤ d and height < 2L.

Highly classical problem: Bit complexity is O(d3L) [Schohage 1982].

⋆ Improvement: O(d2L) arithmetic complexity [Pan]

Sturm tree size is O(d(L+ logd)) [Davenport, 1985] Descartes tree size is Θ(d(L+ logd)) [Eigenwillig-Sharma-Y,

2006]

MAIN RESULT: Bolzano tree size is O(d2(L+ logd)) Sketch in this lecture. See [Burr-Krahmer-Y-Sagraloff, 2008-9]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 91 / 113

Page 466: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Main Complexity Goal – Benchmark Problem

Benchmark Problem in Root IsolationProblem: isolate ALL (real) roots of square-free f (X) ∈Z[X ] ofdegree ≤ d and height < 2L.

Highly classical problem: Bit complexity is O(d3L) [Schohage 1982].

⋆ Improvement: O(d2L) arithmetic complexity [Pan]

Sturm tree size is O(d(L+ logd)) [Davenport, 1985] Descartes tree size is Θ(d(L+ logd)) [Eigenwillig-Sharma-Y,

2006]

MAIN RESULT: Bolzano tree size is O(d2(L+ logd)) Sketch in this lecture. See [Burr-Krahmer-Y-Sagraloff, 2008-9]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 91 / 113

Page 467: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Main Complexity Goal – Benchmark Problem

Benchmark Problem in Root IsolationProblem: isolate ALL (real) roots of square-free f (X) ∈Z[X ] ofdegree ≤ d and height < 2L.

Highly classical problem: Bit complexity is O(d3L) [Schohage 1982].

⋆ Improvement: O(d2L) arithmetic complexity [Pan]

Sturm tree size is O(d(L+ logd)) [Davenport, 1985] Descartes tree size is Θ(d(L+ logd)) [Eigenwillig-Sharma-Y,

2006]

MAIN RESULT: Bolzano tree size is O(d2(L+ logd)) Sketch in this lecture. See [Burr-Krahmer-Y-Sagraloff, 2008-9]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 91 / 113

Page 468: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Main Complexity Goal – Benchmark Problem

Benchmark Problem in Root IsolationProblem: isolate ALL (real) roots of square-free f (X) ∈Z[X ] ofdegree ≤ d and height < 2L.

Highly classical problem: Bit complexity is O(d3L) [Schohage 1982].

⋆ Improvement: O(d2L) arithmetic complexity [Pan]

Sturm tree size is O(d(L+ logd)) [Davenport, 1985] Descartes tree size is Θ(d(L+ logd)) [Eigenwillig-Sharma-Y,

2006]

MAIN RESULT: Bolzano tree size is O(d2(L+ logd)) Sketch in this lecture. See [Burr-Krahmer-Y-Sagraloff, 2008-9]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 91 / 113

Page 469: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Main Complexity Goal – Benchmark Problem

Benchmark Problem in Root IsolationProblem: isolate ALL (real) roots of square-free f (X) ∈Z[X ] ofdegree ≤ d and height < 2L.

Highly classical problem: Bit complexity is O(d3L) [Schohage 1982].

⋆ Improvement: O(d2L) arithmetic complexity [Pan]

Sturm tree size is O(d(L+ logd)) [Davenport, 1985] Descartes tree size is Θ(d(L+ logd)) [Eigenwillig-Sharma-Y,

2006]

MAIN RESULT: Bolzano tree size is O(d2(L+ logd)) Sketch in this lecture. See [Burr-Krahmer-Y-Sagraloff, 2008-9]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 91 / 113

Page 470: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Main Complexity Goal – Benchmark Problem

Benchmark Problem in Root IsolationProblem: isolate ALL (real) roots of square-free f (X) ∈Z[X ] ofdegree ≤ d and height < 2L.

Highly classical problem: Bit complexity is O(d3L) [Schohage 1982].

⋆ Improvement: O(d2L) arithmetic complexity [Pan]

Sturm tree size is O(d(L+ logd)) [Davenport, 1985] Descartes tree size is Θ(d(L+ logd)) [Eigenwillig-Sharma-Y,

2006]

MAIN RESULT: Bolzano tree size is O(d2(L+ logd)) Sketch in this lecture. See [Burr-Krahmer-Y-Sagraloff, 2008-9]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 91 / 113

Page 471: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Main Complexity Goal – Benchmark Problem

Benchmark Problem in Root IsolationProblem: isolate ALL (real) roots of square-free f (X) ∈Z[X ] ofdegree ≤ d and height < 2L.

Highly classical problem: Bit complexity is O(d3L) [Schohage 1982].

⋆ Improvement: O(d2L) arithmetic complexity [Pan]

Sturm tree size is O(d(L+ logd)) [Davenport, 1985] Descartes tree size is Θ(d(L+ logd)) [Eigenwillig-Sharma-Y,

2006]

MAIN RESULT: Bolzano tree size is O(d2(L+ logd)) Sketch in this lecture. See [Burr-Krahmer-Y-Sagraloff, 2008-9]

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 91 / 113

Page 472: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Warm Up Technique: Algebraic Amortization

Idea of Amortization [Davenport (1985), Du/Sharma/Y. (2005)]

Let A(X) ∈Z[X ] have degree n and L-bit coefficients.

Root separation bound: − log |α−β |= O(n(L+ logn))

Amortized bound: −∏(α,β )∈E |β −α|= O(n(L+ logn))

What are restrictions on set E?

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 92 / 113

Page 473: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Warm Up Technique: Algebraic Amortization

Idea of Amortization [Davenport (1985), Du/Sharma/Y. (2005)]

Let A(X) ∈Z[X ] have degree n and L-bit coefficients.

Root separation bound: − log |α−β |= O(n(L+ logn))

Amortized bound: −∏(α,β )∈E |β −α|= O(n(L+ logn))

What are restrictions on set E?

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 92 / 113

Page 474: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Warm Up Technique: Algebraic Amortization

Idea of Amortization [Davenport (1985), Du/Sharma/Y. (2005)]

Let A(X) ∈Z[X ] have degree n and L-bit coefficients.

Root separation bound: − log |α−β |= O(n(L+ logn))

Amortized bound: −∏(α,β )∈E |β −α|= O(n(L+ logn))

What are restrictions on set E?

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 92 / 113

Page 475: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Warm Up Technique: Algebraic Amortization

Idea of Amortization [Davenport (1985), Du/Sharma/Y. (2005)]

Let A(X) ∈Z[X ] have degree n and L-bit coefficients.

Root separation bound: − log |α−β |= O(n(L+ logn))

Amortized bound: −∏(α,β )∈E |β −α|= O(n(L+ logn))

What are restrictions on set E?

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 92 / 113

Page 476: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Warm Up Technique: Algebraic Amortization

Idea of Amortization [Davenport (1985), Du/Sharma/Y. (2005)]

Let A(X) ∈Z[X ] have degree n and L-bit coefficients.

Root separation bound: − log |α−β |= O(n(L+ logn))

Amortized bound: −∏(α,β )∈E |β −α|= O(n(L+ logn))

What are restrictions on set E?

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 92 / 113

Page 477: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

Warm Up Technique: Algebraic Amortization

Idea of Amortization [Davenport (1985), Du/Sharma/Y. (2005)]

Let A(X) ∈Z[X ] have degree n and L-bit coefficients.

Root separation bound: − log |α−β |= O(n(L+ logn))

Amortized bound: −∏(α,β )∈E |β −α|= O(n(L+ logn))

What are restrictions on set E?

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 92 / 113

Page 478: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Adaptive Complexity

The Davenport–Mahler Bound

Theorem ([Davenport (1985), Johnson (1991/98), Du/Sharma/Y. (2005)])

Consider a polynomial A(X) ∈ C[X ] of degree n. Let G = (V ,E) be adigraph whose node set V consists of the roots ϑ1, . . . ,ϑn of A(X). If

(i) (α,β ) ∈ E =⇒ |α| ≤ |β |,(ii) β ∈ V =⇒ indeg(β )≤ 1, and

(iii) G is acyclic,

then∏

(α,β )∈E

|β −α| ≥√|discr(A)|

M(A)n−1 ·2−O(n logn),

where

discr(A) := a2n−2n ∏

i>j

(ϑi −ϑj)2 and M(A) := |an|∏

i

max1, |ϑi |.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 93 / 113

Page 479: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Adaptive analysis is important but virgin territory

Subdivision of Analytic Algorithms in 1-D is current challenge

Standard target is Benchmark Problem for root isolation

Warm-Up Exercise: Use Mahler-Davenport bound for DescartesMethod

Page 480: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Adaptive analysis is important but virgin territory

Subdivision of Analytic Algorithms in 1-D is current challenge

Standard target is Benchmark Problem for root isolation

Warm-Up Exercise: Use Mahler-Davenport bound for DescartesMethod

Page 481: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Adaptive analysis is important but virgin territory

Subdivision of Analytic Algorithms in 1-D is current challenge

Standard target is Benchmark Problem for root isolation

Warm-Up Exercise: Use Mahler-Davenport bound for DescartesMethod

Page 482: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Adaptive analysis is important but virgin territory

Subdivision of Analytic Algorithms in 1-D is current challenge

Standard target is Benchmark Problem for root isolation

Warm-Up Exercise: Use Mahler-Davenport bound for DescartesMethod

Page 483: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Adaptive analysis is important but virgin territory

Subdivision of Analytic Algorithms in 1-D is current challenge

Standard target is Benchmark Problem for root isolation

Warm-Up Exercise: Use Mahler-Davenport bound for DescartesMethod

Page 484: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Adaptive analysis is important but virgin territory

Subdivision of Analytic Algorithms in 1-D is current challenge

Standard target is Benchmark Problem for root isolation

Warm-Up Exercise: Use Mahler-Davenport bound for DescartesMethod

Page 485: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Coming Up Next

12 Analysis of Adaptive Complexity

13 Analysis of Descartes Method

14 Integral Bounds and Framework of Stopping Functions

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 95 / 113

Page 486: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

What is the Descartes Method?

Same framework as EVAL or SturmTo isolate roots of square-free A(X) in interval I

Routine DescartesTest (A(X), I) gives an upper estimate on thenumber of real roots in I.

If DescartesTest (A(X), I) ∈ 0,1 then estimate is exact.

We keep splitting intervals until we get an exact estimate.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 96 / 113

Page 487: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

What is the Descartes Method?

Same framework as EVAL or SturmTo isolate roots of square-free A(X) in interval I

Routine DescartesTest (A(X), I) gives an upper estimate on thenumber of real roots in I.

If DescartesTest (A(X), I) ∈ 0,1 then estimate is exact.

We keep splitting intervals until we get an exact estimate.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 96 / 113

Page 488: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

What is the Descartes Method?

Same framework as EVAL or SturmTo isolate roots of square-free A(X) in interval I

Routine DescartesTest (A(X), I) gives an upper estimate on thenumber of real roots in I.

If DescartesTest (A(X), I) ∈ 0,1 then estimate is exact.

We keep splitting intervals until we get an exact estimate.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 96 / 113

Page 489: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

What is the Descartes Method?

Same framework as EVAL or SturmTo isolate roots of square-free A(X) in interval I

Routine DescartesTest (A(X), I) gives an upper estimate on thenumber of real roots in I.

If DescartesTest (A(X), I) ∈ 0,1 then estimate is exact.

We keep splitting intervals until we get an exact estimate.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 96 / 113

Page 490: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

What is the Descartes Method?

Same framework as EVAL or SturmTo isolate roots of square-free A(X) in interval I

Routine DescartesTest (A(X), I) gives an upper estimate on thenumber of real roots in I.

If DescartesTest (A(X), I) ∈ 0,1 then estimate is exact.

We keep splitting intervals until we get an exact estimate.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 96 / 113

Page 491: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

What is the Descartes Method?

Same framework as EVAL or SturmTo isolate roots of square-free A(X) in interval I

Routine DescartesTest (A(X), I) gives an upper estimate on thenumber of real roots in I.

If DescartesTest (A(X), I) ∈ 0,1 then estimate is exact.

We keep splitting intervals until we get an exact estimate.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 96 / 113

Page 492: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Analysis of Descartes Method

Two-circle Theorem[Ostrowski (1950), Krandick/Mehlhorn (2006)]

If DescartesTest (A(X), [c,d ])≥ 2, then thetwo-circles figure in C around interval [c,d ]contains two roots α,β of A(X).

CorollaryCan choose α,β to be complex conjugate or adjacent real roots.Moreover, |β −α|<

√3(d−c); i.e., (d−c) > |β −α|/

√3.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 97 / 113

Page 493: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Analysis of Descartes Method

Two-circle Theorem[Ostrowski (1950), Krandick/Mehlhorn (2006)]

If DescartesTest (A(X), [c,d ])≥ 2, then thetwo-circles figure in C around interval [c,d ]contains two roots α,β of A(X).

CorollaryCan choose α,β to be complex conjugate or adjacent real roots.Moreover, |β −α|<

√3(d−c); i.e., (d−c) > |β −α|/

√3.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 97 / 113

Page 494: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Analysis of Descartes Method

Two-circle Theorem[Ostrowski (1950), Krandick/Mehlhorn (2006)]

If DescartesTest (A(X), [c,d ])≥ 2, then thetwo-circles figure in C around interval [c,d ]contains two roots α,β of A(X).

CorollaryCan choose α,β to be complex conjugate or adjacent real roots.Moreover, |β −α|<

√3(d−c); i.e., (d−c) > |β −α|/

√3.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 97 / 113

Page 495: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Analysis of Descartes Method

Two-circle Theorem[Ostrowski (1950), Krandick/Mehlhorn (2006)]

If DescartesTest (A(X), [c,d ])≥ 2, then thetwo-circles figure in C around interval [c,d ]contains two roots α,β of A(X).

CorollaryCan choose α,β to be complex conjugate or adjacent real roots.Moreover, |β −α|<

√3(d−c); i.e., (d−c) > |β −α|/

√3.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 97 / 113

Page 496: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Analysis of Descartes Method

Two-circle Theorem[Ostrowski (1950), Krandick/Mehlhorn (2006)]

If DescartesTest (A(X), [c,d ])≥ 2, then thetwo-circles figure in C around interval [c,d ]contains two roots α,β of A(X).

CorollaryCan choose α,β to be complex conjugate or adjacent real roots.Moreover, |β −α|<

√3(d−c); i.e., (d−c) > |β −α|/

√3.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 97 / 113

Page 497: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Analysis of Descartes Method

β

α Two-circle Theorem[Ostrowski (1950), Krandick/Mehlhorn (2006)]

If DescartesTest (A(X), [c,d ])≥ 2, then thetwo-circles figure in C around interval [c,d ]contains two roots α,β of A(X).

CorollaryCan choose α,β to be complex conjugate or adjacent real roots.Moreover, |β −α|<

√3(d−c); i.e., (d−c) > |β −α|/

√3.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 97 / 113

Page 498: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Analysis of Descartes Method

βα

Two-circle Theorem[Ostrowski (1950), Krandick/Mehlhorn (2006)]

If DescartesTest (A(X), [c,d ])≥ 2, then thetwo-circles figure in C around interval [c,d ]contains two roots α,β of A(X).

CorollaryCan choose α,β to be complex conjugate or adjacent real roots.Moreover, |β −α|<

√3(d−c); i.e., (d−c) > |β −α|/

√3.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 97 / 113

Page 499: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Analysis of Descartes Method

Two-circle Theorem[Ostrowski (1950), Krandick/Mehlhorn (2006)]

If DescartesTest (A(X), [c,d ])≥ 2, then thetwo-circles figure in C around interval [c,d ]contains two roots α,β of A(X).

CorollaryCan choose α,β to be complex conjugate or adjacent real roots.Moreover, |β −α|<

√3(d−c); i.e., (d−c) > |β −α|/

√3.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 97 / 113

Page 500: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Tree Bound in terms of Roots (1)

J =3d

0IA bound on path length

1 Consider any path in the recursion treefrom I0 to a parent J of two leaves.

2 At depth d , interval width is 2−d |I0|.Hence depth of J is d = log |I0|/|J|.

3 The path consists of d +1 internalnodes.

4 There is a pair of roots (αJ ,βJ)such that |J|> |βJ−αJ |/

√3; hence

d +1 < log |I0|− log |βJ−αJ |+2.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 98 / 113

Page 501: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Tree Bound in terms of Roots (1)

J =3d

0IA bound on path length

1 Consider any path in the recursion treefrom I0 to a parent J of two leaves.

2 At depth d , interval width is 2−d |I0|.Hence depth of J is d = log |I0|/|J|.

3 The path consists of d +1 internalnodes.

4 There is a pair of roots (αJ ,βJ)such that |J|> |βJ−αJ |/

√3; hence

d +1 < log |I0|− log |βJ−αJ |+2.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 98 / 113

Page 502: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Tree Bound in terms of Roots (1)

J =3d

0IA bound on path length

1 Consider any path in the recursion treefrom I0 to a parent J of two leaves.

2 At depth d , interval width is 2−d |I0|.Hence depth of J is d = log |I0|/|J|.

3 The path consists of d +1 internalnodes.

4 There is a pair of roots (αJ ,βJ)such that |J|> |βJ−αJ |/

√3; hence

d +1 < log |I0|− log |βJ−αJ |+2.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 98 / 113

Page 503: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Tree Bound in terms of Roots (1)

J =3d

0IA bound on path length

1 Consider any path in the recursion treefrom I0 to a parent J of two leaves.

2 At depth d , interval width is 2−d |I0|.Hence depth of J is d = log |I0|/|J|.

3 The path consists of d +1 internalnodes.

4 There is a pair of roots (αJ ,βJ)such that |J|> |βJ−αJ |/

√3; hence

d +1 < log |I0|− log |βJ−αJ |+2.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 98 / 113

Page 504: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Tree Bound in terms of Roots (2)

J

0I

#(internal nodes on path) < log |I0|− log |βJ−αJ |+2#(internal nodes in tree) < ∑J (log |I0|− log |βJ−αJ |+2)#(all nodes in tree) < 1+2 ·∑J (log |I0|− log |βJ−αJ |+2)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 99 / 113

Page 505: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Tree Bound in terms of Roots (2)

JJ

J

J

0I

#(internal nodes on path) < log |I0|− log |βJ−αJ |+2#(internal nodes in tree) < ∑J (log |I0|− log |βJ−αJ |+2)#(all nodes in tree) < 1+2 ·∑J (log |I0|− log |βJ−αJ |+2)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 99 / 113

Page 506: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Tree Bound in terms of Roots (2)

JJ

J

J

0I

#(internal nodes on path) < log |I0|− log |βJ−αJ |+2#(internal nodes in tree) < ∑J (log |I0|− log |βJ−αJ |+2)#(all nodes in tree) < 1+2 ·∑J (log |I0|− log |βJ−αJ |+2)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 99 / 113

Page 507: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Tree Bound in terms of Roots (2)

JJ

J

J

0I

#(internal nodes on path) < log |I0|− log |βJ−αJ |+2#(internal nodes in tree) < ∑J (log |I0|− log |βJ−αJ |+2)#(all nodes in tree) < 1+2 ·∑J (log |I0|− log |βJ−αJ |+2)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 99 / 113

PropositionThe size of the recursion tree is bounded by

−2 log ∏J

|βJ−αJ |+n log |I0|+2n +1

Page 508: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Tree Bound in terms of Roots (2)

JJ

J

J

0I

#(internal nodes on path) < log |I0|− log |βJ−αJ |+2#(internal nodes in tree) < ∑J (log |I0|− log |βJ−αJ |+2)#(all nodes in tree) < 1+2 ·∑J (log |I0|− log |βJ−αJ |+2)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 99 / 113

PropositionThe size of the recursion tree is bounded by

−2 log ∏J

|βJ−αJ |+n log |I0|+2n +1

Page 509: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Turning our Product into an Admissible Graph

We want to rewrite

∏J

|βJ−αJ | as ∏(α,β )∈E

|β −α|.

How often |βJ−αJ | appears?

adjacent real: ≤ 1

complex conjugate ≤ 2

We need two graphs. (Paper: just 1)

Conditions on G = (V ,E)

(i) (α,β ) ∈ E =⇒ |α| ≤ |β |(ii) β ∈ V =⇒ indeg(β )≤ 1 (iii) G is acyclic

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 100 / 113

Page 510: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Turning our Product into an Admissible Graph

We want to rewrite

∏J

|βJ−αJ | as ∏(α,β )∈E

|β −α|.

How often |βJ−αJ | appears?

adjacent real: ≤ 1

complex conjugate ≤ 2

We need two graphs. (Paper: just 1)

Conditions on G = (V ,E)

(i) (α,β ) ∈ E =⇒ |α| ≤ |β |(ii) β ∈ V =⇒ indeg(β )≤ 1 (iii) G is acyclic

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 100 / 113

Page 511: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Turning our Product into an Admissible Graph

We want to rewrite

∏J

|βJ−αJ | as ∏(α,β )∈E

|β −α|.

How often |βJ−αJ | appears?

adjacent real: ≤ 1

complex conjugate ≤ 2

We need two graphs. (Paper: just 1)

Conditions on G = (V ,E)

(i) (α,β ) ∈ E =⇒ |α| ≤ |β |(ii) β ∈ V =⇒ indeg(β )≤ 1 (iii) G is acyclic

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 100 / 113

Page 512: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Turning our Product into an Admissible Graph

We want to rewrite

∏J

|βJ−αJ | as ∏(α,β )∈E

|β −α|.

How often |βJ−αJ | appears?

adjacent real: ≤ 1

complex conjugate ≤ 2

We need two graphs. (Paper: just 1)

Conditions on G = (V ,E)

(i) (α,β ) ∈ E =⇒ |α| ≤ |β |(ii) β ∈ V =⇒ indeg(β )≤ 1 (iii) G is acyclic

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 100 / 113

Page 513: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Turning our Product into an Admissible Graph

We want to rewrite

∏J

|βJ−αJ | as ∏(α,β )∈E

|β −α|.

How often |βJ−αJ | appears?

adjacent real: ≤ 1

complex conjugate ≤ 2

We need two graphs. (Paper: just 1)

Conditions on G = (V ,E)

(i) (α,β ) ∈ E =⇒ |α| ≤ |β |(ii) β ∈ V =⇒ indeg(β )≤ 1 (iii) G is acyclic

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 100 / 113

Page 514: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Turning our Product into an Admissible Graph

We want to rewrite

∏J

|βJ−αJ | as ∏(α,β )∈E

|β −α|.

How often |βJ−αJ | appears?

adjacent real: ≤ 1

complex conjugate ≤ 2

We need two graphs. (Paper: just 1)

Conditions on G = (V ,E)

(i) (α,β ) ∈ E =⇒ |α| ≤ |β |(ii) β ∈ V =⇒ indeg(β )≤ 1 (iii) G is acyclic

0

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 100 / 113

Page 515: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Turning our Product into an Admissible Graph

We want to rewrite

∏J

|βJ−αJ | as ∏(α,β )∈E

|β −α|.

How often |βJ−αJ | appears?

adjacent real: ≤ 1

complex conjugate ≤ 2

We need two graphs. (Paper: just 1)

Conditions on G = (V ,E)

(i) (α,β ) ∈ E =⇒ |α| ≤ |β |(ii) β ∈ V =⇒ indeg(β )≤ 1 (iii) G is acyclic

0

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 100 / 113

Page 516: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Turning our Product into an Admissible Graph

We want to rewrite

∏J

|βJ−αJ | as ∏(α,β )∈E

|β −α|.

How often |βJ−αJ | appears?

adjacent real: ≤ 1

complex conjugate ≤ 2

We need two graphs. (Paper: just 1)

Conditions on G = (V ,E)

(i) (α,β ) ∈ E =⇒ |α| ≤ |β |(ii) β ∈ V =⇒ indeg(β )≤ 1 (iii) G is acyclic

0

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 100 / 113

Page 517: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Analysis of Descartes Method

Main Result on Descartes Analysis

Theorem (Eigenwillig/Sharma/Y. (2006))On the Benchmark Problem, we obtain

|T |= O(n(L+ logn)).

For L≥ logn, this is optimal.

Argument of [Krandick/Mehlhorn, 2006]: |T |= O(n logn (L+ logn)).

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 101 / 113

Page 518: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Almost Tight Bound on Descartes Method based on AlgebraicAmortization

Benchmark complexity of Sturm and Descartes are the same “theory caught up with practice”

What about EVAL? New ideas needed – one is Amortized Evaluation Bounds

Page 519: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Almost Tight Bound on Descartes Method based on AlgebraicAmortization

Benchmark complexity of Sturm and Descartes are the same “theory caught up with practice”

What about EVAL? New ideas needed – one is Amortized Evaluation Bounds

Page 520: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Almost Tight Bound on Descartes Method based on AlgebraicAmortization

Benchmark complexity of Sturm and Descartes are the same “theory caught up with practice”

What about EVAL? New ideas needed – one is Amortized Evaluation Bounds

Page 521: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Almost Tight Bound on Descartes Method based on AlgebraicAmortization

Benchmark complexity of Sturm and Descartes are the same “theory caught up with practice”

What about EVAL? New ideas needed – one is Amortized Evaluation Bounds

Page 522: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Almost Tight Bound on Descartes Method based on AlgebraicAmortization

Benchmark complexity of Sturm and Descartes are the same “theory caught up with practice”

What about EVAL? New ideas needed – one is Amortized Evaluation Bounds

Page 523: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Almost Tight Bound on Descartes Method based on AlgebraicAmortization

Benchmark complexity of Sturm and Descartes are the same “theory caught up with practice”

What about EVAL? New ideas needed – one is Amortized Evaluation Bounds

Page 524: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

Almost Tight Bound on Descartes Method based on AlgebraicAmortization

Benchmark complexity of Sturm and Descartes are the same “theory caught up with practice”

What about EVAL? New ideas needed – one is Amortized Evaluation Bounds

Page 525: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Coming Up Next

12 Analysis of Adaptive Complexity

13 Analysis of Descartes Method

14 Integral Bounds and Framework of Stopping Functions

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 103 / 113

Page 526: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Subdivision Phase

Subdivision based on a Predicate C(I)Initialize a queue Q←I0

1 WHILE (Q 6= /0)2 I← Q.remove()3 IF (C(I) holds), output I4 ELSE5 Split I and insert children into Q

Goal – Bound the size of recursion tree T (I0)

NOTE: C(I)≡ C0(I)∨C1(I) in EVAL

The leaves of T (I0) induces a partition P(I) of I0Suffices to upper bound #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 104 / 113

Page 527: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Subdivision Phase

Subdivision based on a Predicate C(I)Initialize a queue Q←I0

1 WHILE (Q 6= /0)2 I← Q.remove()3 IF (C(I) holds), output I4 ELSE5 Split I and insert children into Q

Goal – Bound the size of recursion tree T (I0)

NOTE: C(I)≡ C0(I)∨C1(I) in EVAL

The leaves of T (I0) induces a partition P(I) of I0Suffices to upper bound #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 104 / 113

Page 528: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Subdivision Phase

Subdivision based on a Predicate C(I)Initialize a queue Q←I0

1 WHILE (Q 6= /0)2 I← Q.remove()3 IF (C(I) holds), output I4 ELSE5 Split I and insert children into Q

Goal – Bound the size of recursion tree T (I0)

NOTE: C(I)≡ C0(I)∨C1(I) in EVAL

The leaves of T (I0) induces a partition P(I) of I0Suffices to upper bound #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 104 / 113

Page 529: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Subdivision Phase

Subdivision based on a Predicate C(I)Initialize a queue Q←I0

1 WHILE (Q 6= /0)2 I← Q.remove()3 IF (C(I) holds), output I4 ELSE5 Split I and insert children into Q

Goal – Bound the size of recursion tree T (I0)

NOTE: C(I)≡ C0(I)∨C1(I) in EVAL

The leaves of T (I0) induces a partition P(I) of I0Suffices to upper bound #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 104 / 113

Page 530: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Subdivision Phase

Subdivision based on a Predicate C(I)Initialize a queue Q←I0

1 WHILE (Q 6= /0)2 I← Q.remove()3 IF (C(I) holds), output I4 ELSE5 Split I and insert children into Q

Goal – Bound the size of recursion tree T (I0)

NOTE: C(I)≡ C0(I)∨C1(I) in EVAL

The leaves of T (I0) induces a partition P(I) of I0Suffices to upper bound #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 104 / 113

Page 531: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Subdivision Phase

Subdivision based on a Predicate C(I)Initialize a queue Q←I0

1 WHILE (Q 6= /0)2 I← Q.remove()3 IF (C(I) holds), output I4 ELSE5 Split I and insert children into Q

Goal – Bound the size of recursion tree T (I0)

NOTE: C(I)≡ C0(I)∨C1(I) in EVAL

The leaves of T (I0) induces a partition P(I) of I0Suffices to upper bound #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 104 / 113

Page 532: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Subdivision Phase

Subdivision based on a Predicate C(I)Initialize a queue Q←I0

1 WHILE (Q 6= /0)2 I← Q.remove()3 IF (C(I) holds), output I4 ELSE5 Split I and insert children into Q

Goal – Bound the size of recursion tree T (I0)

NOTE: C(I)≡ C0(I)∨C1(I) in EVAL

The leaves of T (I0) induces a partition P(I) of I0Suffices to upper bound #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 104 / 113

Page 533: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Subdivision Phase

Subdivision based on a Predicate C(I)Initialize a queue Q←I0

1 WHILE (Q 6= /0)2 I← Q.remove()3 IF (C(I) holds), output I4 ELSE5 Split I and insert children into Q

Goal – Bound the size of recursion tree T (I0)

NOTE: C(I)≡ C0(I)∨C1(I) in EVAL

The leaves of T (I0) induces a partition P(I) of I0Suffices to upper bound #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 104 / 113

Page 534: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Subdivision Phase

Subdivision based on a Predicate C(I)Initialize a queue Q←I0

1 WHILE (Q 6= /0)2 I← Q.remove()3 IF (C(I) holds), output I4 ELSE5 Split I and insert children into Q

Goal – Bound the size of recursion tree T (I0)

NOTE: C(I)≡ C0(I)∨C1(I) in EVAL

The leaves of T (I0) induces a partition P(I) of I0Suffices to upper bound #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 104 / 113

Page 535: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Subdivision Phase

Subdivision based on a Predicate C(I)Initialize a queue Q←I0

1 WHILE (Q 6= /0)2 I← Q.remove()3 IF (C(I) holds), output I4 ELSE5 Split I and insert children into Q

Goal – Bound the size of recursion tree T (I0)

NOTE: C(I)≡ C0(I)∨C1(I) in EVAL

The leaves of T (I0) induces a partition P(I) of I0Suffices to upper bound #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 104 / 113

Page 536: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Subdivision Phase

Subdivision based on a Predicate C(I)Initialize a queue Q←I0

1 WHILE (Q 6= /0)2 I← Q.remove()3 IF (C(I) holds), output I4 ELSE5 Split I and insert children into Q

Goal – Bound the size of recursion tree T (I0)

NOTE: C(I)≡ C0(I)∨C1(I) in EVAL

The leaves of T (I0) induces a partition P(I) of I0Suffices to upper bound #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 104 / 113

Page 537: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Framework of Stopping Functions

Stopping Function for C(I) is F : R→R≥0

For all interval I:If (∃b ∈ I)[w(I) < F(b)],

then C(I) holds.

How to use F? The Penultimate Property

Similar to Descartes proof

If J ∈ P(I0), its parent ( “penultimate leaf” ) has width 2w(J).

Conclude from definition of stopping function:(∀c ∈ J) [2w(J) ≥ F(c)].

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 105 / 113

Page 538: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Framework of Stopping Functions

Stopping Function for C(I) is F : R→R≥0

For all interval I:If (∃b ∈ I)[w(I) < F(b)],

then C(I) holds.

How to use F? The Penultimate Property

Similar to Descartes proof

If J ∈ P(I0), its parent ( “penultimate leaf” ) has width 2w(J).

Conclude from definition of stopping function:(∀c ∈ J) [2w(J) ≥ F(c)].

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 105 / 113

Page 539: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Framework of Stopping Functions

Stopping Function for C(I) is F : R→R≥0

For all interval I:If (∃b ∈ I)[w(I) < F(b)],

then C(I) holds.

How to use F? The Penultimate Property

Similar to Descartes proof

If J ∈ P(I0), its parent ( “penultimate leaf” ) has width 2w(J).

Conclude from definition of stopping function:(∀c ∈ J) [2w(J) ≥ F(c)].

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 105 / 113

Page 540: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Framework of Stopping Functions

Stopping Function for C(I) is F : R→R≥0

For all interval I:If (∃b ∈ I)[w(I) < F(b)],

then C(I) holds.

How to use F? The Penultimate Property

Similar to Descartes proof

If J ∈ P(I0), its parent ( “penultimate leaf” ) has width 2w(J).

Conclude from definition of stopping function:(∀c ∈ J) [2w(J) ≥ F(c)].

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 105 / 113

Page 541: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Framework of Stopping Functions

Stopping Function for C(I) is F : R→R≥0

For all interval I:If (∃b ∈ I)[w(I) < F(b)],

then C(I) holds.

How to use F? The Penultimate Property

Similar to Descartes proof

If J ∈ P(I0), its parent ( “penultimate leaf” ) has width 2w(J).

Conclude from definition of stopping function:(∀c ∈ J) [2w(J) ≥ F(c)].

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 105 / 113

Page 542: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

An Integral Bound

Theorem (Integral Bound[Burr/Krahmer/Y.] )

#P(I0)≤max

1,

I0

2dx

F(x)

Proof.

1 If #P(I0) = 1, result is true.

2 Else pick any J ∈ P(I0): it hasthe penultimate property.

3 Choosing c∗ ∈ J such that F(c∗)is maximum

Pf (contd)

J

2dx

F(x)≥

J

2dx

F(c∗)

≥ 2

F(c∗)

Jdx

=2w(J)

F(c∗)≥ 1 [PenultimateProp.]

I0

2dx

F(x)= ∑

J∈P(I0)

J

2dx

F(c∗)

≥ ∑J∈P(I0)

1 = #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 106 / 113

Page 543: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

An Integral Bound

Theorem (Integral Bound[Burr/Krahmer/Y.] )

#P(I0)≤max

1,

I0

2dx

F(x)

Proof.

1 If #P(I0) = 1, result is true.

2 Else pick any J ∈ P(I0): it hasthe penultimate property.

3 Choosing c∗ ∈ J such that F(c∗)is maximum

Pf (contd)

J

2dx

F(x)≥

J

2dx

F(c∗)

≥ 2

F(c∗)

Jdx

=2w(J)

F(c∗)≥ 1 [PenultimateProp.]

I0

2dx

F(x)= ∑

J∈P(I0)

J

2dx

F(c∗)

≥ ∑J∈P(I0)

1 = #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 106 / 113

Page 544: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

An Integral Bound

Theorem (Integral Bound[Burr/Krahmer/Y.] )

#P(I0)≤max

1,

I0

2dx

F(x)

Proof.

1 If #P(I0) = 1, result is true.

2 Else pick any J ∈ P(I0): it hasthe penultimate property.

3 Choosing c∗ ∈ J such that F(c∗)is maximum

Pf (contd)

J

2dx

F(x)≥

J

2dx

F(c∗)

≥ 2

F(c∗)

Jdx

=2w(J)

F(c∗)≥ 1 [PenultimateProp.]

I0

2dx

F(x)= ∑

J∈P(I0)

J

2dx

F(c∗)

≥ ∑J∈P(I0)

1 = #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 106 / 113

Page 545: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

An Integral Bound

Theorem (Integral Bound[Burr/Krahmer/Y.] )

#P(I0)≤max

1,

I0

2dx

F(x)

Proof.

1 If #P(I0) = 1, result is true.

2 Else pick any J ∈ P(I0): it hasthe penultimate property.

3 Choosing c∗ ∈ J such that F(c∗)is maximum

Pf (contd)

J

2dx

F(x)≥

J

2dx

F(c∗)

≥ 2

F(c∗)

Jdx

=2w(J)

F(c∗)≥ 1 [PenultimateProp.]

I0

2dx

F(x)= ∑

J∈P(I0)

J

2dx

F(c∗)

≥ ∑J∈P(I0)

1 = #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 106 / 113

Page 546: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

An Integral Bound

Theorem (Integral Bound[Burr/Krahmer/Y.] )

#P(I0)≤max

1,

I0

2dx

F(x)

Proof.

1 If #P(I0) = 1, result is true.

2 Else pick any J ∈ P(I0): it hasthe penultimate property.

3 Choosing c∗ ∈ J such that F(c∗)is maximum

Pf (contd)

J

2dx

F(x)≥

J

2dx

F(c∗)

≥ 2

F(c∗)

Jdx

=2w(J)

F(c∗)≥ 1 [PenultimateProp.]

I0

2dx

F(x)= ∑

J∈P(I0)

J

2dx

F(c∗)

≥ ∑J∈P(I0)

1 = #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 106 / 113

Page 547: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

An Integral Bound

Theorem (Integral Bound[Burr/Krahmer/Y.] )

#P(I0)≤max

1,

I0

2dx

F(x)

Proof.

1 If #P(I0) = 1, result is true.

2 Else pick any J ∈ P(I0): it hasthe penultimate property.

3 Choosing c∗ ∈ J such that F(c∗)is maximum

Pf (contd)

J

2dx

F(x)≥

J

2dx

F(c∗)

≥ 2

F(c∗)

Jdx

=2w(J)

F(c∗)≥ 1 [PenultimateProp.]

I0

2dx

F(x)= ∑

J∈P(I0)

J

2dx

F(c∗)

≥ ∑J∈P(I0)

1 = #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 106 / 113

Page 548: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

An Integral Bound

Theorem (Integral Bound[Burr/Krahmer/Y.] )

#P(I0)≤max

1,

I0

2dx

F(x)

Proof.

1 If #P(I0) = 1, result is true.

2 Else pick any J ∈ P(I0): it hasthe penultimate property.

3 Choosing c∗ ∈ J such that F(c∗)is maximum

Pf (contd)

J

2dx

F(x)≥

J

2dx

F(c∗)

≥ 2

F(c∗)

Jdx

=2w(J)

F(c∗)≥ 1 [PenultimateProp.]

I0

2dx

F(x)= ∑

J∈P(I0)

J

2dx

F(c∗)

≥ ∑J∈P(I0)

1 = #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 106 / 113

Page 549: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

An Integral Bound

Theorem (Integral Bound[Burr/Krahmer/Y.] )

#P(I0)≤max

1,

I0

2dx

F(x)

Proof.

1 If #P(I0) = 1, result is true.

2 Else pick any J ∈ P(I0): it hasthe penultimate property.

3 Choosing c∗ ∈ J such that F(c∗)is maximum

Pf (contd)

J

2dx

F(x)≥

J

2dx

F(c∗)

≥ 2

F(c∗)

Jdx

=2w(J)

F(c∗)≥ 1 [PenultimateProp.]

I0

2dx

F(x)= ∑

J∈P(I0)

J

2dx

F(c∗)

≥ ∑J∈P(I0)

1 = #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 106 / 113

Page 550: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

An Integral Bound

Theorem (Integral Bound[Burr/Krahmer/Y.] )

#P(I0)≤max

1,

I0

2dx

F(x)

Proof.

1 If #P(I0) = 1, result is true.

2 Else pick any J ∈ P(I0): it hasthe penultimate property.

3 Choosing c∗ ∈ J such that F(c∗)is maximum

Pf (contd)

J

2dx

F(x)≥

J

2dx

F(c∗)

≥ 2

F(c∗)

Jdx

=2w(J)

F(c∗)≥ 1 [PenultimateProp.]

I0

2dx

F(x)= ∑

J∈P(I0)

J

2dx

F(c∗)

≥ ∑J∈P(I0)

1 = #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 106 / 113

Page 551: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

An Integral Bound

Theorem (Integral Bound[Burr/Krahmer/Y.] )

#P(I0)≤max

1,

I0

2dx

F(x)

Proof.

1 If #P(I0) = 1, result is true.

2 Else pick any J ∈ P(I0): it hasthe penultimate property.

3 Choosing c∗ ∈ J such that F(c∗)is maximum

Pf (contd)

J

2dx

F(x)≥

J

2dx

F(c∗)

≥ 2

F(c∗)

Jdx

=2w(J)

F(c∗)≥ 1 [PenultimateProp.]

I0

2dx

F(x)= ∑

J∈P(I0)

J

2dx

F(c∗)

≥ ∑J∈P(I0)

1 = #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 106 / 113

Page 552: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

An Integral Bound

Theorem (Integral Bound[Burr/Krahmer/Y.] )

#P(I0)≤max

1,

I0

2dx

F(x)

Proof.

1 If #P(I0) = 1, result is true.

2 Else pick any J ∈ P(I0): it hasthe penultimate property.

3 Choosing c∗ ∈ J such that F(c∗)is maximum

Pf (contd)

J

2dx

F(x)≥

J

2dx

F(c∗)

≥ 2

F(c∗)

Jdx

=2w(J)

F(c∗)≥ 1 [PenultimateProp.]

I0

2dx

F(x)= ∑

J∈P(I0)

J

2dx

F(c∗)

≥ ∑J∈P(I0)

1 = #P(I0)

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 106 / 113

Page 553: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Remarks on Integral Bound

Too hard to directly bound the integral implied by C0(I)∨C1(I). So we devise stopping functions F(x) that can be analyzed.

Technique of bounding∫

I φ(x)dx is Continuous Amortizationwhere φ(x) is charge function.

In discrete “amortization arguments”, we bound ∑ni=1 φ(i) where

φ(i) is “charge” for the ith operation.

Ruppert (1995) introduced a similar integral for triangulation. Unlike us, he does not evaluate his integral.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 107 / 113

Page 554: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Remarks on Integral Bound

Too hard to directly bound the integral implied by C0(I)∨C1(I). So we devise stopping functions F(x) that can be analyzed.

Technique of bounding∫

I φ(x)dx is Continuous Amortizationwhere φ(x) is charge function.

In discrete “amortization arguments”, we bound ∑ni=1 φ(i) where

φ(i) is “charge” for the ith operation.

Ruppert (1995) introduced a similar integral for triangulation. Unlike us, he does not evaluate his integral.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 107 / 113

Page 555: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Remarks on Integral Bound

Too hard to directly bound the integral implied by C0(I)∨C1(I). So we devise stopping functions F(x) that can be analyzed.

Technique of bounding∫

I φ(x)dx is Continuous Amortizationwhere φ(x) is charge function.

In discrete “amortization arguments”, we bound ∑ni=1 φ(i) where

φ(i) is “charge” for the ith operation.

Ruppert (1995) introduced a similar integral for triangulation. Unlike us, he does not evaluate his integral.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 107 / 113

Page 556: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Remarks on Integral Bound

Too hard to directly bound the integral implied by C0(I)∨C1(I). So we devise stopping functions F(x) that can be analyzed.

Technique of bounding∫

I φ(x)dx is Continuous Amortizationwhere φ(x) is charge function.

In discrete “amortization arguments”, we bound ∑ni=1 φ(i) where

φ(i) is “charge” for the ith operation.

Ruppert (1995) introduced a similar integral for triangulation. Unlike us, he does not evaluate his integral.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 107 / 113

Page 557: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Remarks on Integral Bound

Too hard to directly bound the integral implied by C0(I)∨C1(I). So we devise stopping functions F(x) that can be analyzed.

Technique of bounding∫

I φ(x)dx is Continuous Amortizationwhere φ(x) is charge function.

In discrete “amortization arguments”, we bound ∑ni=1 φ(i) where

φ(i) is “charge” for the ith operation.

Ruppert (1995) introduced a similar integral for triangulation. Unlike us, he does not evaluate his integral.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 107 / 113

Page 558: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Remarks on Integral Bound

Too hard to directly bound the integral implied by C0(I)∨C1(I). So we devise stopping functions F(x) that can be analyzed.

Technique of bounding∫

I φ(x)dx is Continuous Amortizationwhere φ(x) is charge function.

In discrete “amortization arguments”, we bound ∑ni=1 φ(i) where

φ(i) is “charge” for the ith operation.

Ruppert (1995) introduced a similar integral for triangulation. Unlike us, he does not evaluate his integral.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 107 / 113

Page 559: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

An Amortized Evaluation BoundThe Idea

Want lower bounds on |f (α)|Multivariate version used in [Cheng/Gao/Y. ISSAC’2007]

Amortization: give lower bounds on ∏i∈J |f (αi)|.

Theorem

Let F ,H ∈Z[X ] be relatively prime such that F = φφ , H = ηη whereφ , φ ,η, η ∈ C[X ] have degrees m,m,n, n, respectively. If β1, . . . ,βnare all the zeros of η(X), then

n

∏i=1

|φ(βi)| ≥1

lc(η)m ((m +1)‖φ‖)n M(η)m((m +1)‖φ‖

)n+nM(H)m

.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 108 / 113

Page 560: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

An Amortized Evaluation BoundThe Idea

Want lower bounds on |f (α)|Multivariate version used in [Cheng/Gao/Y. ISSAC’2007]

Amortization: give lower bounds on ∏i∈J |f (αi)|.

Theorem

Let F ,H ∈Z[X ] be relatively prime such that F = φφ , H = ηη whereφ , φ ,η, η ∈ C[X ] have degrees m,m,n, n, respectively. If β1, . . . ,βnare all the zeros of η(X), then

n

∏i=1

|φ(βi)| ≥1

lc(η)m ((m +1)‖φ‖)n M(η)m((m +1)‖φ‖

)n+nM(H)m

.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 108 / 113

Page 561: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

An Amortized Evaluation BoundThe Idea

Want lower bounds on |f (α)|Multivariate version used in [Cheng/Gao/Y. ISSAC’2007]

Amortization: give lower bounds on ∏i∈J |f (αi)|.

Theorem

Let F ,H ∈Z[X ] be relatively prime such that F = φφ , H = ηη whereφ , φ ,η, η ∈ C[X ] have degrees m,m,n, n, respectively. If β1, . . . ,βnare all the zeros of η(X), then

n

∏i=1

|φ(βi)| ≥1

lc(η)m ((m +1)‖φ‖)n M(η)m((m +1)‖φ‖

)n+nM(H)m

.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 108 / 113

Page 562: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

An Amortized Evaluation BoundThe Idea

Want lower bounds on |f (α)|Multivariate version used in [Cheng/Gao/Y. ISSAC’2007]

Amortization: give lower bounds on ∏i∈J |f (αi)|.

Theorem

Let F ,H ∈Z[X ] be relatively prime such that F = φφ , H = ηη whereφ , φ ,η, η ∈ C[X ] have degrees m,m,n, n, respectively. If β1, . . . ,βnare all the zeros of η(X), then

n

∏i=1

|φ(βi)| ≥1

lc(η)m ((m +1)‖φ‖)n M(η)m((m +1)‖φ‖

)n+nM(H)m

.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 108 / 113

Page 563: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

An Amortized Evaluation BoundThe Idea

Want lower bounds on |f (α)|Multivariate version used in [Cheng/Gao/Y. ISSAC’2007]

Amortization: give lower bounds on ∏i∈J |f (αi)|.

Theorem

Let F ,H ∈Z[X ] be relatively prime such that F = φφ , H = ηη whereφ , φ ,η, η ∈ C[X ] have degrees m,m,n, n, respectively. If β1, . . . ,βnare all the zeros of η(X), then

n

∏i=1

|φ(βi)| ≥1

lc(η)m ((m +1)‖φ‖)n M(η)m((m +1)‖φ‖

)n+nM(H)m

.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 108 / 113

Page 564: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Complex Roots: Lesson from Meshing Curves

How to isolate complex roots?Previous subdivision methods:

Pan-Weyl Algorithm (Turan Test) Root isolation on boundary of boxes (topological degree)

Hints from Curve Meshing (Snyder/PV/Cxy) – not good idea

New Result (with Sagraloff)There is an exact analog CEVAL for complex roots that is simple andeasy to implement exactly.It achieves the same bit complexity bound as in the real case.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 109 / 113

Page 565: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Complex Roots: Lesson from Meshing Curves

How to isolate complex roots?Previous subdivision methods:

Pan-Weyl Algorithm (Turan Test) Root isolation on boundary of boxes (topological degree)

Hints from Curve Meshing (Snyder/PV/Cxy) – not good idea

New Result (with Sagraloff)There is an exact analog CEVAL for complex roots that is simple andeasy to implement exactly.It achieves the same bit complexity bound as in the real case.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 109 / 113

Page 566: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Complex Roots: Lesson from Meshing Curves

How to isolate complex roots?Previous subdivision methods:

Pan-Weyl Algorithm (Turan Test) Root isolation on boundary of boxes (topological degree)

Hints from Curve Meshing (Snyder/PV/Cxy) – not good idea

New Result (with Sagraloff)There is an exact analog CEVAL for complex roots that is simple andeasy to implement exactly.It achieves the same bit complexity bound as in the real case.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 109 / 113

Page 567: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Integral Bounds and Framework of Stopping Functions

Complex Roots: Lesson from Meshing Curves

How to isolate complex roots?Previous subdivision methods:

Pan-Weyl Algorithm (Turan Test) Root isolation on boundary of boxes (topological degree)

Hints from Curve Meshing (Snyder/PV/Cxy) – not good idea

New Result (with Sagraloff)There is an exact analog CEVAL for complex roots that is simple andeasy to implement exactly.It achieves the same bit complexity bound as in the real case.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 109 / 113

Page 568: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Mini Summary

The Bolzano approach to Root Isolation is an Exact and Analyticapproach to root isolation

It seems to have complexity that matches Sturm and Descartes

It is much easier to implement than either

Page 569: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 3

Complexity Analysis of Adaptivity at infancy

Analysis Techniques we have seen so far:

Continuous amortization via integral bounds Amortized root separation bounds Amortized evaluation bounds Cluster analysis

Major Open Problems How to characterize local complexity? How to extend to higher dimensions

Page 570: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 3

Complexity Analysis of Adaptivity at infancy

Analysis Techniques we have seen so far:

Continuous amortization via integral bounds Amortized root separation bounds Amortized evaluation bounds Cluster analysis

Major Open Problems How to characterize local complexity? How to extend to higher dimensions

Page 571: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 3

Complexity Analysis of Adaptivity at infancy

Analysis Techniques we have seen so far:

Continuous amortization via integral bounds Amortized root separation bounds Amortized evaluation bounds Cluster analysis

Major Open Problems How to characterize local complexity? How to extend to higher dimensions

Page 572: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 3

Complexity Analysis of Adaptivity at infancy

Analysis Techniques we have seen so far:

Continuous amortization via integral bounds Amortized root separation bounds Amortized evaluation bounds Cluster analysis

Major Open Problems How to characterize local complexity? How to extend to higher dimensions

Page 573: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 3

Complexity Analysis of Adaptivity at infancy

Analysis Techniques we have seen so far:

Continuous amortization via integral bounds Amortized root separation bounds Amortized evaluation bounds Cluster analysis

Major Open Problems How to characterize local complexity? How to extend to higher dimensions

Page 574: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 3

Complexity Analysis of Adaptivity at infancy

Analysis Techniques we have seen so far:

Continuous amortization via integral bounds Amortized root separation bounds Amortized evaluation bounds Cluster analysis

Major Open Problems How to characterize local complexity? How to extend to higher dimensions

Page 575: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 3

Complexity Analysis of Adaptivity at infancy

Analysis Techniques we have seen so far:

Continuous amortization via integral bounds Amortized root separation bounds Amortized evaluation bounds Cluster analysis

Major Open Problems How to characterize local complexity? How to extend to higher dimensions

Page 576: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 3

Complexity Analysis of Adaptivity at infancy

Analysis Techniques we have seen so far:

Continuous amortization via integral bounds Amortized root separation bounds Amortized evaluation bounds Cluster analysis

Major Open Problems How to characterize local complexity? How to extend to higher dimensions

Page 577: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 3

Complexity Analysis of Adaptivity at infancy

Analysis Techniques we have seen so far:

Continuous amortization via integral bounds Amortized root separation bounds Amortized evaluation bounds Cluster analysis

Major Open Problems How to characterize local complexity? How to extend to higher dimensions

Page 578: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 3

Complexity Analysis of Adaptivity at infancy

Analysis Techniques we have seen so far:

Continuous amortization via integral bounds Amortized root separation bounds Amortized evaluation bounds Cluster analysis

Major Open Problems How to characterize local complexity? How to extend to higher dimensions

Page 579: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 3

Complexity Analysis of Adaptivity at infancy

Analysis Techniques we have seen so far:

Continuous amortization via integral bounds Amortized root separation bounds Amortized evaluation bounds Cluster analysis

Major Open Problems How to characterize local complexity? How to extend to higher dimensions

Page 580: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Lecture 3

Complexity Analysis of Adaptivity at infancy

Analysis Techniques we have seen so far:

Continuous amortization via integral bounds Amortized root separation bounds Amortized evaluation bounds Cluster analysis

Major Open Problems How to characterize local complexity? How to extend to higher dimensions

Page 581: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Tutorial

MANY advantages in numerical/analytic approaches to algebraicand geometric problems

practical, adaptive, easy to implement

New ingredient we seek: a priori guarantees and exactness

Zero problems is the locus of our investigation

Exact Numerical Computation (ENC) is a suitable computationalmodel

The explicitization problems are central for ENC

Analysis of adaptive algorithms is wide open

Page 582: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Tutorial

MANY advantages in numerical/analytic approaches to algebraicand geometric problems

practical, adaptive, easy to implement

New ingredient we seek: a priori guarantees and exactness

Zero problems is the locus of our investigation

Exact Numerical Computation (ENC) is a suitable computationalmodel

The explicitization problems are central for ENC

Analysis of adaptive algorithms is wide open

Page 583: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Tutorial

MANY advantages in numerical/analytic approaches to algebraicand geometric problems

practical, adaptive, easy to implement

New ingredient we seek: a priori guarantees and exactness

Zero problems is the locus of our investigation

Exact Numerical Computation (ENC) is a suitable computationalmodel

The explicitization problems are central for ENC

Analysis of adaptive algorithms is wide open

Page 584: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Tutorial

MANY advantages in numerical/analytic approaches to algebraicand geometric problems

practical, adaptive, easy to implement

New ingredient we seek: a priori guarantees and exactness

Zero problems is the locus of our investigation

Exact Numerical Computation (ENC) is a suitable computationalmodel

The explicitization problems are central for ENC

Analysis of adaptive algorithms is wide open

Page 585: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Tutorial

MANY advantages in numerical/analytic approaches to algebraicand geometric problems

practical, adaptive, easy to implement

New ingredient we seek: a priori guarantees and exactness

Zero problems is the locus of our investigation

Exact Numerical Computation (ENC) is a suitable computationalmodel

The explicitization problems are central for ENC

Analysis of adaptive algorithms is wide open

Page 586: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Tutorial

MANY advantages in numerical/analytic approaches to algebraicand geometric problems

practical, adaptive, easy to implement

New ingredient we seek: a priori guarantees and exactness

Zero problems is the locus of our investigation

Exact Numerical Computation (ENC) is a suitable computationalmodel

The explicitization problems are central for ENC

Analysis of adaptive algorithms is wide open

Page 587: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Tutorial

MANY advantages in numerical/analytic approaches to algebraicand geometric problems

practical, adaptive, easy to implement

New ingredient we seek: a priori guarantees and exactness

Zero problems is the locus of our investigation

Exact Numerical Computation (ENC) is a suitable computationalmodel

The explicitization problems are central for ENC

Analysis of adaptive algorithms is wide open

Page 588: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Tutorial

MANY advantages in numerical/analytic approaches to algebraicand geometric problems

practical, adaptive, easy to implement

New ingredient we seek: a priori guarantees and exactness

Zero problems is the locus of our investigation

Exact Numerical Computation (ENC) is a suitable computationalmodel

The explicitization problems are central for ENC

Analysis of adaptive algorithms is wide open

Page 589: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Summary of Tutorial

MANY advantages in numerical/analytic approaches to algebraicand geometric problems

practical, adaptive, easy to implement

New ingredient we seek: a priori guarantees and exactness

Zero problems is the locus of our investigation

Exact Numerical Computation (ENC) is a suitable computationalmodel

The explicitization problems are central for ENC

Analysis of adaptive algorithms is wide open

Page 590: Tutorial: Exact Numerical Computation in Algebra and Geometry · Many problems in Computational Science & Engineering (CS&E) are defined on the continuum. Standard algorithms for

Thank you!

Website http://cs.nyu.edu/exact/

Download Papers

Download Core Library

GENERAL REFERENCE

Chee K. Yap.

Theory of Real Computation according to EGC.

In P. Hertling, Ch.M. Hoffmann, W. Luther, and N.Revol, editors, ReliableImplementation of Real Number Algorithms: Theory and Practice,No. 5045 in LNCS, pp. 193–237. Springer, 2008.

Yap (NYU) Tutorial: Exact Numerical Computation ISSAC, July 2009 113 / 113