Problem Formulation for Truth-Table Invariant Cylindrical Algebraic - - PowerPoint PPT Presentation

problem formulation for truth table invariant cylindrical
SMART_READER_LITE
LIVE PREVIEW

Problem Formulation for Truth-Table Invariant Cylindrical Algebraic - - PowerPoint PPT Presentation

Background material Problem formulation Problem Formulation for Truth-Table Invariant Cylindrical Algebraic Decomposition by Incremental Triangular Decomposition Matthew England (The University of Bath) Joint work with: R. Bradford, J.H.


slide-1
SLIDE 1

Background material Problem formulation

Problem Formulation for Truth-Table Invariant Cylindrical Algebraic Decomposition by Incremental Triangular Decomposition

Matthew England (The University of Bath) Joint work with: R. Bradford, J.H. Davenport & D. Wilson (University of Bath), C. Chen (CIGIT, Chinese Academy of Sciences), and M. Moreno Maza (Western University). Conferences on Intelligent Computer Mathematics Calculemus Track University of Coimbra, Coimbra, Portugal July 7-11 2014

England et al. Problem Formulation for RC-TTICAD

slide-2
SLIDE 2

Background material Problem formulation

Problem Formulation for Truth-Table Invariant Cylindrical Algebraic Decomposition by Incremental Triangular Decomposition

1

Background material CAD RC-TTICAD

2

Problem formulation Constraint ordering Other issues of formulation

England et al. Problem Formulation for RC-TTICAD

slide-3
SLIDE 3

Background material Problem formulation

Problem Formulation for Truth-Table Invariant Cylindrical Algebraic Decomposition by Incremental Triangular Decomposition

1

Background material CAD RC-TTICAD

2

Problem formulation Constraint ordering Other issues of formulation

England et al. Problem Formulation for RC-TTICAD

slide-4
SLIDE 4

Background material Problem formulation

Problem Formulation for Truth-Table Invariant Cylindrical Algebraic Decomposition by Incremental Triangular Decomposition

1

Background material CAD RC-TTICAD

2

Problem formulation Constraint ordering Other issues of formulation

England et al. Problem Formulation for RC-TTICAD

slide-5
SLIDE 5

Background material Problem formulation

Problem Formulation for Truth-Table Invariant Cylindrical Algebraic Decomposition by Incremental Triangular Decomposition

1

Background material CAD RC-TTICAD

2

Problem formulation Constraint ordering Other issues of formulation

England et al. Problem Formulation for RC-TTICAD

slide-6
SLIDE 6

Background material Problem formulation

Problem Formulation for Truth-Table Invariant Cylindrical Algebraic Decomposition by Incremental Triangular Decomposition

1

Background material CAD RC-TTICAD

2

Problem formulation Constraint ordering Other issues of formulation

England et al. Problem Formulation for RC-TTICAD

slide-7
SLIDE 7

Background material Problem formulation CAD RC-TTICAD

Outline

1

Background material CAD RC-TTICAD

2

Problem formulation Constraint ordering Other issues of formulation

England et al. Problem Formulation for RC-TTICAD

slide-8
SLIDE 8

Background material Problem formulation CAD RC-TTICAD

What is a CAD?

A Cylindrical Algebraic Decomposition (CAD) is: a decomposition meaning a partition of Rn into connected subsets called cells; (semi)-algebraic meaning that each cell can be defined by a sequence of polynomial equations and inequations. cylindrical meaning the cells are arranged in a useful manner - their projections are either equal or disjoint.

England et al. Problem Formulation for RC-TTICAD

slide-9
SLIDE 9

Background material Problem formulation CAD RC-TTICAD

Example - Cylindrical Algebraic Decomposition

A CAD of R2 is given by the following collections of 13 cells: [x < −1, y = y], [x = −1, y < 0], [x = −1, y = 0], [x = −1, y > 0], [−1 < x < 1, y2 + x2 − 1 > 0, y > 0], [−1 < x < 1, y2 + x2 − 1 = 0, y > 0], [−1 < x < 1, y2 + x2 − 1 < 0], [−1 < x < 1, y2 + x2 − 1 = 0, y < 0], [−1 < x < 1, y2 + x2 − 1 < 0, y < 0], [x = 1, y < 0], [x = 1, y = 0], [x = 1, y > 0], [x > 1, y = y]

England et al. Problem Formulation for RC-TTICAD

slide-10
SLIDE 10

Background material Problem formulation CAD RC-TTICAD

Example - Cylindrical Algebraic Decomposition

A CAD of R2 is given by the following collections of 13 cells: x < −1 { [x < −1, y = y], x = −1 { [x = −1, y < 0], [x = −1, y = 0], [x = −1, y > 0], { [−1 < x < 1, y2 + x2 − 1 > 0, y > 0], { [−1 < x < 1, y2 + x2 − 1 = 0, y > 0], − 1 < x < 1 { [−1 < x < 1, y2 + x2 − 1 < 0], { [−1 < x < 1, y2 + x2 − 1 = 0, y < 0], { [−1 < x < 1, y2 + x2 − 1 < 0, y < 0], x = 1 { [x = 1, y < 0], [x = 1, y = 0], [x = 1, y > 0], x > 1 { [x > 1, y = y]

England et al. Problem Formulation for RC-TTICAD

slide-11
SLIDE 11

Background material Problem formulation CAD RC-TTICAD

Sign-invariance

Traditionally a CAD is produced from a set of polynomials such that each polynomial has constant sign (positive, zero or negative) in each cell. Such a CAD is said to be sign-invariant. The example from the previous slide was a sign-invariant CAD for the polynomial x2 + y2 − 1.

England et al. Problem Formulation for RC-TTICAD

slide-12
SLIDE 12

Background material Problem formulation CAD RC-TTICAD

Sign-invariance

Traditionally a CAD is produced from a set of polynomials such that each polynomial has constant sign (positive, zero or negative) in each cell. Such a CAD is said to be sign-invariant. The example from the previous slide was a sign-invariant CAD for the polynomial x2 + y2 − 1.

England et al. Problem Formulation for RC-TTICAD

slide-13
SLIDE 13

Background material Problem formulation CAD RC-TTICAD

Sign-invariance

Traditionally a CAD is produced from a set of polynomials such that each polynomial has constant sign (positive, zero or negative) in each cell. Such a CAD is said to be sign-invariant. The example from the previous slide was a sign-invariant CAD for the polynomial x2 + y2 − 1.

England et al. Problem Formulation for RC-TTICAD

slide-14
SLIDE 14

Background material Problem formulation CAD RC-TTICAD

Sign-invariance

Traditionally a CAD is produced from a set of polynomials such that each polynomial has constant sign (positive, zero or negative) in each cell. Such a CAD is said to be sign-invariant. The example from the previous slide was a sign-invariant CAD for the polynomial x2 + y2 − 1.

England et al. Problem Formulation for RC-TTICAD

slide-15
SLIDE 15

Background material Problem formulation CAD RC-TTICAD

Sign-invariance

Traditionally a CAD is produced from a set of polynomials such that each polynomial has constant sign (positive, zero or negative) in each cell. Such a CAD is said to be sign-invariant. The example from the previous slide was a sign-invariant CAD for the polynomial x2 + y2 − 1.

England et al. Problem Formulation for RC-TTICAD

slide-16
SLIDE 16

Background material Problem formulation CAD RC-TTICAD

Sign-invariance

Traditionally a CAD is produced from a set of polynomials such that each polynomial has constant sign (positive, zero or negative) in each cell. Such a CAD is said to be sign-invariant. The example from the previous slide was a sign-invariant CAD for the polynomial x2 + y2 − 1. Sign-invariance means we need only test one sample point per cell to determine behaviour of the polynomials. Various applications: quantifier elimination, optimisation, theorem proving, . . .

England et al. Problem Formulation for RC-TTICAD

slide-17
SLIDE 17

Background material Problem formulation CAD RC-TTICAD

Projection and lifting

Most CAD algorithms work by a process of: Projection: to derive a set of polynomials from the input which can define the decomposition

England et al. Problem Formulation for RC-TTICAD

slide-18
SLIDE 18

Background material Problem formulation CAD RC-TTICAD

Projection and lifting

Most CAD algorithms work by a process of: Projection: to derive a set of polynomials from the input which can define the decomposition Lifting to incrementally build CADs by dimension.

England et al. Problem Formulation for RC-TTICAD

slide-19
SLIDE 19

Background material Problem formulation CAD RC-TTICAD

Projection and lifting

Most CAD algorithms work by a process of: Projection: to derive a set of polynomials from the input which can define the decomposition Lifting to incrementally build CADs by dimension.

England et al. Problem Formulation for RC-TTICAD

slide-20
SLIDE 20

Background material Problem formulation CAD RC-TTICAD

Projection and lifting

Most CAD algorithms work by a process of: Projection: to derive a set of polynomials from the input which can define the decomposition Lifting to incrementally build CADs by dimension.

England et al. Problem Formulation for RC-TTICAD

slide-21
SLIDE 21

Background material Problem formulation CAD RC-TTICAD

Projection and lifting

Most CAD algorithms work by a process of: Projection: to derive a set of polynomials from the input which can define the decomposition Lifting to incrementally build CADs by dimension.

England et al. Problem Formulation for RC-TTICAD

slide-22
SLIDE 22

Background material Problem formulation CAD RC-TTICAD

Projection and lifting

Most CAD algorithms work by a process of: Projection: to derive a set of polynomials from the input which can define the decomposition Lifting to incrementally build CADs by dimension.

England et al. Problem Formulation for RC-TTICAD

slide-23
SLIDE 23

Background material Problem formulation CAD RC-TTICAD

Projection and lifting

Most CAD algorithms work by a process of: Projection: to derive a set of polynomials from the input which can define the decomposition Lifting to incrementally build CADs by dimension.

England et al. Problem Formulation for RC-TTICAD

slide-24
SLIDE 24

Background material Problem formulation CAD RC-TTICAD

Truth table invariance

Given a sequence of quantifier free formulae (QFFs) we define a truth table invariant CAD (TTICAD) as a CAD such that each formula has constant Boolean truth value on each cell.

England et al. Problem Formulation for RC-TTICAD

slide-25
SLIDE 25

Background material Problem formulation CAD RC-TTICAD

Truth table invariance

Given a sequence of quantifier free formulae (QFFs) we define a truth table invariant CAD (TTICAD) as a CAD such that each formula has constant Boolean truth value on each cell. ISSAC 2013: Bath team + Scott McCallum derived a reduced projection operator to build TTICADs for a sequence

  • f formulae which each have an equational constraint

(EC): an equation logically implied by the formula. 2014 (submitted): Extended to any sequence of formulae, with savings if at least one has an EC. Plus further savings identified in the lifting phase from presence of EC.

England et al. Problem Formulation for RC-TTICAD

slide-26
SLIDE 26

Background material Problem formulation CAD RC-TTICAD

A new framework for CAD

< 2009 All CAD research broadly within Collin’s projection and lifting framework. Rn Rn Rn−1 Rn−1 R1 R1 Projection Lifting

England et al. Problem Formulation for RC-TTICAD

slide-27
SLIDE 27

Background material Problem formulation CAD RC-TTICAD

A new framework for CAD

< 2009: All CAD research broadly within Collin’s projection and lifting framework. ISSAC 2009: Chen, Moreno Maza, Xia & Yang give new approach. Rn Rn Cn Cn Rn−1 Rn−1 R1 R1 Projection Lifting CCD RRI

England et al. Problem Formulation for RC-TTICAD

slide-28
SLIDE 28

Background material Problem formulation CAD RC-TTICAD

A new framework for CAD

< 2009: All CAD research broadly within Collin’s projection and lifting framework. ISSAC 2009: Chen, Moreno Maza, Xia & Yang give new approach. Rn Rn Cn Cn Rn−1 Rn−1 R1 R1 Projection Lifting CCD RRI RC-CAD PL-CAD

England et al. Problem Formulation for RC-TTICAD

slide-29
SLIDE 29

Background material Problem formulation CAD RC-TTICAD

Cylindrical complex decompositions

RC-CAD starts with a complex cylindrical decomposition (CCD). The tree below represents a sign-invariant CCD for p := x2 + bx + c under variable ordering c ≺ b ≺ x.

c = 0 b = 0 x = 0 x = 0 b = 0 p = 0 p = 0 c = 0 b2 − 4c = 0 2x + b = 0 2x + b = 0 b2 − 4c = 0 p = 0 p = 0

England et al. Problem Formulation for RC-TTICAD

slide-30
SLIDE 30

Background material Problem formulation CAD RC-TTICAD

Cylindrical complex decompositions

RC-CAD starts with a complex cylindrical decomposition (CCD). The tree below represents a sign-invariant CCD for p := x2 + bx + c under variable ordering c ≺ b ≺ x.

c = 0 b = 0 x = 0 x = 0 b = 0 p = 0 p = 0 c = 0 b2 − 4c = 0 2x + b = 0 2x + b = 0 b2 − 4c = 0 p = 0 p = 0

The key advantage is case distinction: the polynomial b is not sign-invariant for the whole decomposition, only when required.

England et al. Problem Formulation for RC-TTICAD

slide-31
SLIDE 31

Background material Problem formulation CAD RC-TTICAD

Incremental triangular decomposition

CCDs may be calculated using the theory of triangular decomposition by regular chains: ISSAC 2009: Utilising existing algorithms in the RegularChains Library. ASCM 2012: Using custom built algorithms, now part of the RegularChains Library. One practical difference is that the latter algorithms work incrementally: refining a tree one polynomial at a time.

England et al. Problem Formulation for RC-TTICAD

slide-32
SLIDE 32

Background material Problem formulation CAD RC-TTICAD

Incremental triangular decomposition

CCDs may be calculated using the theory of triangular decomposition by regular chains: ISSAC 2009: Utilising existing algorithms in the RegularChains Library. ASCM 2012: Using custom built algorithms, now part of the RegularChains Library. One practical difference is that the latter algorithms work incrementally: refining a tree one polynomial at a time. This allows for the easy implementation of simplification in the presence of equational constraints: If an EC is not satisfied on a branch then no need for further refinement.

England et al. Problem Formulation for RC-TTICAD

slide-33
SLIDE 33

Background material Problem formulation CAD RC-TTICAD

RC-TTICAD

CASC 2014: Algorithm presented to produce TTICADs in the RC-CAD framework through incremental triangular decomposition = RC-TTICAD.

England et al. Problem Formulation for RC-TTICAD

slide-34
SLIDE 34

Background material Problem formulation CAD RC-TTICAD

RC-TTICAD

CASC 2014: Algorithm presented to produce TTICADs in the RC-CAD framework through incremental triangular decomposition = RC-TTICAD. Advantages over PL-TTICAD: The case distinction built into the RC-CAD framework; Can take advantage of multiple ECs in a formula easily; No theoretical failure due to well-orientedness conditions. Experimental results in CASC 2014 show this approach to be competitive with the state of the art in CAD.

England et al. Problem Formulation for RC-TTICAD

slide-35
SLIDE 35

Background material Problem formulation CAD RC-TTICAD

RC-TTICAD

CASC 2014: Algorithm presented to produce TTICADs in the RC-CAD framework through incremental triangular decomposition = RC-TTICAD. Advantages over PL-TTICAD: The case distinction built into the RC-CAD framework; Can take advantage of multiple ECs in a formula easily; No theoretical failure due to well-orientedness conditions. Experimental results in CASC 2014 show this approach to be competitive with the state of the art in CAD. However, the best implementation varied greatly by example. We now try to optimise both the implementation of RC-TTICAD, but also how we formulate problems for it.

England et al. Problem Formulation for RC-TTICAD

slide-36
SLIDE 36

Background material Problem formulation Constraint ordering Other issues of formulation

Outline

1

Background material CAD RC-TTICAD

2

Problem formulation Constraint ordering Other issues of formulation

England et al. Problem Formulation for RC-TTICAD

slide-37
SLIDE 37

Background material Problem formulation Constraint ordering Other issues of formulation

Problem formulation for CAD

Any CAD is produced relative to an ordering on the variables (defining which projections the cylindricity is defined against). Depending on the application we may have the freedom to choose. Consider a sign-invariant CAD for f := (x − 1)(y2 + 1) − 1. Then there are two possible minimal CADs: 3 cells (2 full dimensional) 11 cells (5 full dimensional)

England et al. Problem Formulation for RC-TTICAD

slide-38
SLIDE 38

Background material Problem formulation Constraint ordering Other issues of formulation

Problem formulation for CAD

Any CAD is produced relative to an ordering on the variables (defining which projections the cylindricity is defined against). Depending on the application we may have the freedom to choose. Consider a sign-invariant CAD for f := (x − 1)(y2 + 1) − 1. Then there are two possible minimal CADs: 3 cells (2 full dimensional) 11 cells (5 full dimensional) The choice can change the tractability of a problem. There exist various heuristics to help. Some of these will be presented next along with a new approach utilising machine learning.

England et al. Problem Formulation for RC-TTICAD

slide-39
SLIDE 39

Background material Problem formulation Constraint ordering Other issues of formulation

Choosing the order of constraints

We focus on a choice particular to RC-TTICAD: the order in which constraints are presented to the algorithm.

England et al. Problem Formulation for RC-TTICAD

slide-40
SLIDE 40

Background material Problem formulation Constraint ordering Other issues of formulation

Choosing the order of constraints

We focus on a choice particular to RC-TTICAD: the order in which constraints are presented to the algorithm. The algorithm processes all ECs first; It is logical to process ECs from the same formula one after the another; It makes no difference in what order you process non-ECs. But there are open questions: Q1: In what order to process the formulae? Q2: In what order order to process the ECs within each formulae?

England et al. Problem Formulation for RC-TTICAD

slide-41
SLIDE 41

Background material Problem formulation Constraint ordering Other issues of formulation

Choosing the order of constraints

We focus on a choice particular to RC-TTICAD: the order in which constraints are presented to the algorithm. The algorithm processes all ECs first; It is logical to process ECs from the same formula one after the another; It makes no difference in what order you process non-ECs. But there are open questions: Q1: In what order to process the formulae? Q2: In what order order to process the ECs within each formulae? We use → to denote the order constraints are processed. Existing heuristics for CAD do not discriminate between these orderings.

England et al. Problem Formulation for RC-TTICAD

slide-42
SLIDE 42

Background material Problem formulation Constraint ordering Other issues of formulation

Illustrative example

Assume the ordering x ≺ y and consider f1 := x2 + y2 − 1, f2 := 2y2 − x, φ1 := f1 = 0 ∧ f2 = 0, f3 := (x − 5)2 + (y − 1)2 − 1, φ2 := f3 = 0.

England et al. Problem Formulation for RC-TTICAD

slide-43
SLIDE 43

Background material Problem formulation Constraint ordering Other issues of formulation

Illustrative example

Assume the ordering x ≺ y and consider f1:= x2 + y2 − 1, f2 := 2y2 − x, φ1 := f1 = 0 ∧ f2 = 0, f3:= (x − 5)2 + (y − 1)2 − 1, φ2 := f3 = 0.

England et al. Problem Formulation for RC-TTICAD

slide-44
SLIDE 44

Background material Problem formulation Constraint ordering Other issues of formulation

Illustrative example

Assume the ordering x ≺ y and consider f1 := x2 + y2 − 1, f2 := 2y2 − x, φ1 := f1 = 0 ∧ f2 = 0, f3 := (x − 5)2 + (y − 1)2 − 1, φ2 := f3 = 0.

England et al. Problem Formulation for RC-TTICAD

slide-45
SLIDE 45

Background material Problem formulation Constraint ordering Other issues of formulation

RC-TTICAD for the Illustrative example I

Our implementation of RC-TTICAD computed: φ1 → φ2 and f 1 → f 2: 37 cells in 0.095 seconds. φ1 → φ2 and f 2 → f 1: 81 cells in 0.118 seconds. φ2 → φ1 and f 1 → f 2: 25 cells in 0.087 seconds. φ2 → φ1 and f 2 → f 1: 43 cells in 0.089 seconds Both constraint ordering and EC ordering made substantial differences to output size (and computation time);

England et al. Problem Formulation for RC-TTICAD

slide-46
SLIDE 46

Background material Problem formulation Constraint ordering Other issues of formulation

RC-TTICAD for the Illustrative example I

Our implementation of RC-TTICAD computed: φ1 → φ2 and f 1 → f 2: 37 cells in 0.095 seconds. φ1 → φ2 and f 2 → f 1: 81 cells in 0.118 seconds. φ2 → φ1 and f 1 → f 2: 25 cells in 0.087 seconds. φ2 → φ1 and f 2 → f 1: 43 cells in 0.089 seconds Both constraint ordering and EC ordering made substantial differences to output size (and computation time); It was always superior to process f1 → f2;

England et al. Problem Formulation for RC-TTICAD

slide-47
SLIDE 47

Background material Problem formulation Constraint ordering Other issues of formulation

RC-TTICAD for the Illustrative example I

Our implementation of RC-TTICAD computed: φ1 → φ2 and f 1 → f 2: 37 cells in 0.095 seconds. φ1 → φ2 and f 2 → f 1: 81 cells in 0.118 seconds. φ2 → φ1 and f 1 → f 2: 25 cells in 0.087 seconds. φ2 → φ1 and f 2 → f 1: 43 cells in 0.089 seconds Both constraint ordering and EC ordering made substantial differences to output size (and computation time); It was always superior to process f1 → f2; It was always superior to process φ2 → φ1.

England et al. Problem Formulation for RC-TTICAD

slide-48
SLIDE 48

Background material Problem formulation Constraint ordering Other issues of formulation

RC-TTICAD for the Illustrative example II

Figures on the top have φ1 → φ2 and on the bottom φ2 → φ1. Figures on the left have f 1 → f 2 and on the right f 2 → f 1.

England et al. Problem Formulation for RC-TTICAD

slide-49
SLIDE 49

Background material Problem formulation Constraint ordering Other issues of formulation

Lessons for EC ordering choice

Illustrated by example and verified by algorithm specification, the

  • utput of RC-TTICAD is

SI for discriminant of first EC in each formula; SI for resultants of pairs of first ECs in each formula; So identify these polynomials as the constraint ordering set and use a measure on it as a heuristic for making the choice of EC ordering.

England et al. Problem Formulation for RC-TTICAD

slide-50
SLIDE 50

Background material Problem formulation Constraint ordering Other issues of formulation

Lessons for EC ordering choice

Illustrated by example and verified by algorithm specification, the

  • utput of RC-TTICAD is

SI for discriminant of first EC in each formula; SI for resultants of pairs of first ECs in each formula; So identify these polynomials as the constraint ordering set and use a measure on it as a heuristic for making the choice of EC ordering. Previous research would suggest sotd as the measure, but this measure of sparsity it only suitable for entire projection sets, not

  • subsets. Instead we suggest sum of degrees in the main variable.

(Illustrated by 2012 x-axis ellipse problem in the paper). Refer to this as Heuristic 1.

England et al. Problem Formulation for RC-TTICAD

slide-51
SLIDE 51

Background material Problem formulation Constraint ordering Other issues of formulation

Lessons for formula ordering choice

Illustrated by example and verified by algorithm specification, the

  • utput of RC-TTICAD is

SI for the first polynomial considered. So beneficial to place a formulae first if it has only one EC. But what to do otherwise?

England et al. Problem Formulation for RC-TTICAD

slide-52
SLIDE 52

Background material Problem formulation Constraint ordering Other issues of formulation

Lessons for formula ordering choice

Illustrated by example and verified by algorithm specification, the

  • utput of RC-TTICAD is

SI for the first polynomial considered. So beneficial to place a formulae first if it has only one EC. But what to do otherwise? Heuristic 2: Construct CCDs; extract the polynomials within; refine to a CAD the one with the lowest sum of degree of polynomials (each taken in the main variable of the polynomial).

England et al. Problem Formulation for RC-TTICAD

slide-53
SLIDE 53

Background material Problem formulation Constraint ordering Other issues of formulation

Lessons for formula ordering choice

Illustrated by example and verified by algorithm specification, the

  • utput of RC-TTICAD is

SI for the first polynomial considered. So beneficial to place a formulae first if it has only one EC. But what to do otherwise? Heuristic 2: Construct CCDs; extract the polynomials within; refine to a CAD the one with the lowest sum of degree of polynomials (each taken in the main variable of the polynomial). Heuristic 3: Use Heuristic 1 and split ties with Heuristic 2.

England et al. Problem Formulation for RC-TTICAD

slide-54
SLIDE 54

Background material Problem formulation Constraint ordering Other issues of formulation

Experiments on the heuristics

Generated 100 random systems consisting of two formulae, each with two ECs and one non-EC, defined by random sparse polynomials in three variables. For each there are 2 × 2 × 2 = 8 choices of constraint ordering.

England et al. Problem Formulation for RC-TTICAD

slide-55
SLIDE 55

Background material Problem formulation Constraint ordering Other issues of formulation

Experiments on the heuristics

Generated 100 random systems consisting of two formulae, each with two ECs and one non-EC, defined by random sparse polynomials in three variables. For each there are 2 × 2 × 2 = 8 choices of constraint ordering. Average TTICAD had 2018 cells, computed in 37 seconds. But median CAD had 1554 cells, computed in 6.1 seconds. A lot of variance both between and within individual problems. For each problem we compared how the heuristics’ choices compared to the problem average.

England et al. Problem Formulation for RC-TTICAD

slide-56
SLIDE 56

Background material Problem formulation Constraint ordering Other issues of formulation

Experimental results

H Cell Count Saving % Saving 1 1589.67 428.61 26.73 2 1209.10 809.18 47.70 3 1307.63 710.65 40.97

England et al. Problem Formulation for RC-TTICAD

slide-57
SLIDE 57

Background material Problem formulation Constraint ordering Other issues of formulation

Experimental results

H Cell Count Saving % Saving 1 1589.67 428.61 26.73 2 1209.10 809.18 47.70 3 1307.63 710.65 40.97

England et al. Problem Formulation for RC-TTICAD

slide-58
SLIDE 58

Background material Problem formulation Constraint ordering Other issues of formulation

Experimental results

H Cell Count Saving % Saving 1 1589.67 428.61 26.73 2 1209.10 809.18 47.70 3 1307.63 710.65 40.97 H Time Saving % Saving Net Saving % Net Saving 1 14.48 22.02 37.17 22.01 37.12 2 9.02 27.47 49.45

  • 150.59
  • 215.31

3 9.42 27.08 43.84

  • 20.02

0.77

England et al. Problem Formulation for RC-TTICAD

slide-59
SLIDE 59

Background material Problem formulation Constraint ordering Other issues of formulation

Experimental results

H Cell Count Saving % Saving 1 1589.67 428.61 26.73 2 1209.10 809.18 47.70 3 1307.63 710.65 40.97 H Time Saving % Saving Net Saving % Net Saving 1 14.48 22.02 37.17 22.01 37.12 2 9.02 27.47 49.45

  • 150.59
  • 215.31

3 9.42 27.08 43.84

  • 20.02

0.77

England et al. Problem Formulation for RC-TTICAD

slide-60
SLIDE 60

Background material Problem formulation Constraint ordering Other issues of formulation

Experimental results

H Cell Count Saving % Saving 1 1589.67 428.61 26.73 2 1209.10 809.18 47.70 3 1307.63 710.65 40.97 H Time Saving % Saving Net Saving % Net Saving 1 14.48 22.02 37.17 22.01 37.12 2 9.02 27.47 49.45

  • 150.59
  • 215.31

3 9.42 27.08 43.84

  • 20.02

0.77

England et al. Problem Formulation for RC-TTICAD

slide-61
SLIDE 61

Background material Problem formulation Constraint ordering Other issues of formulation

Experimental results

H Cell Count Saving % Saving 1 1589.67 428.61 26.73 2 1209.10 809.18 47.70 3 1307.63 710.65 40.97 H Time Saving % Saving Net Saving % Net Saving 1 14.48 22.02 37.17 22.01 37.12 2 9.02 27.47 49.45

  • 150.59
  • 215.31

3 9.42 27.08 43.84

  • 20.02

0.77

England et al. Problem Formulation for RC-TTICAD

slide-62
SLIDE 62

Background material Problem formulation Constraint ordering Other issues of formulation

Conclusions

We can see situations where all three heuristics could be of use: Use Heuristic 1 if lowest computation time is prioritised, for example if many CADs must be computed or this is just a small step in a larger calculation. Use Heuristic 2 if lowest cell count is prioritised, for example if

  • nly one CAD must be computed but then much work will be

performed with its cells.

England et al. Problem Formulation for RC-TTICAD

slide-63
SLIDE 63

Background material Problem formulation Constraint ordering Other issues of formulation

Conclusions

We can see situations where all three heuristics could be of use: Use Heuristic 1 if lowest computation time is prioritised, for example if many CADs must be computed or this is just a small step in a larger calculation. Use Heuristic 2 if lowest cell count is prioritised, for example if

  • nly one CAD must be computed but then much work will be

performed with its cells. Use Heuristic 3 for a mixed approach, for example if a low cell count is required but the problem size makes Heuristic 2 infeasible.

England et al. Problem Formulation for RC-TTICAD

slide-64
SLIDE 64

Background material Problem formulation Constraint ordering Other issues of formulation

Conclusions

We can see situations where all three heuristics could be of use: Use Heuristic 1 if lowest computation time is prioritised, for example if many CADs must be computed or this is just a small step in a larger calculation. Use Heuristic 2 if lowest cell count is prioritised, for example if

  • nly one CAD must be computed but then much work will be

performed with its cells. Use Heuristic 3 for a mixed approach, for example if a low cell count is required but the problem size makes Heuristic 2 infeasible. Heuristic 1 likely to become part of the default implementation.

England et al. Problem Formulation for RC-TTICAD

slide-65
SLIDE 65

Background material Problem formulation Constraint ordering Other issues of formulation

Other issues of formulation

In CICM 2013 the Bath team looked at issues of problem formulation for PL-TTICAD, revisited now for RC-TTICAD: EC designation: This problem is analogous to picking which EC to process first in RC-TTICAD.

England et al. Problem Formulation for RC-TTICAD

slide-66
SLIDE 66

Background material Problem formulation Constraint ordering Other issues of formulation

Other issues of formulation

In CICM 2013 the Bath team looked at issues of problem formulation for PL-TTICAD, revisited now for RC-TTICAD: EC designation: This problem is analogous to picking which EC to process first in RC-TTICAD. Composing sub-formula: This issue no longer needs to be considered since RC-TTICAD can use multiple ECs per formula. The best case is to always break into conjunctive sub-formulae.

England et al. Problem Formulation for RC-TTICAD

slide-67
SLIDE 67

Background material Problem formulation Constraint ordering Other issues of formulation

Other issues of formulation

In CICM 2013 the Bath team looked at issues of problem formulation for PL-TTICAD, revisited now for RC-TTICAD: EC designation: This problem is analogous to picking which EC to process first in RC-TTICAD. Composing sub-formula: This issue no longer needs to be considered since RC-TTICAD can use multiple ECs per formula. The best case is to always break into conjunctive sub-formulae. Another key issue: Variable ordering: Recently we have developed a new heuristic more tuned to RC-TTICAD for picking this. But should we decide this before or after the constraint ordering?

England et al. Problem Formulation for RC-TTICAD

slide-68
SLIDE 68

Background material Problem formulation Constraint ordering Other issues of formulation

References and contact

This CICM paper examined issues of problem formulation for RC-TTICAD. The algorithms itself is presented in:

  • R. Bradford, C. Chen, J.H. Davenport, M. England,
  • M. Moreno Maza and D. Wilson

Truth table invariant cylindrical algebraic decomposition by regular chains. To appear: Proc. CASC 2014. arxiv:1401.6310 Contact Details M.England@bath.ac.uk http://www.cs.bath.ac.uk/∼me350/

Thanks for listening!

England et al. Problem Formulation for RC-TTICAD