International Congress of Mathematical Software 2014

46
International Congress of Mathematical Software 2014 Notes by J.H. Davenport — [email protected] 5–9 August 2014

Transcript of International Congress of Mathematical Software 2014

Page 1: International Congress of Mathematical Software 2014

International Congress of Mathematical Software

2014

Notes by J.H. Davenport — [email protected]

5–9 August 2014

Page 2: International Congress of Mathematical Software 2014

Contents

1 5 August 2014 41.1 Math Soft/Soft Math: Buchberger . . . . . . . . . . . . . . . . . 4

1.1.1 We live in a mathematical world . . . . . . . . . . . . . . 51.2 Flyspecking Flyspeck: Adams . . . . . . . . . . . . . . . . . . . . 51.3 Symbolic Computer Package for Mathematica for Versatile Ma-

nipulation of Mathematical Expressions . . . . . . . . . . . . . . 61.4 Representing, Archiving and Searching the Space of Mathemati-

cal Knowledge: Kohlhase . . . . . . . . . . . . . . . . . . . . . . 61.5 Grobner Cover: Montes . . . . . . . . . . . . . . . . . . . . . . . 71.6 Maximum Likelihood Function for Parameter Estimation in Point

Clouds by Grobner bases . . . . . . . . . . . . . . . . . . . . . . . 71.7 What’s new in CoCoA: Abbott . . . . . . . . . . . . . . . . . . . 71.8 Application of Groebner Bases to Nonlinear Mechanics Problems:

Liu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.8.1 Large Deflection Static Cable Analysis . . . . . . . . . . . 81.8.2 Another cable problem . . . . . . . . . . . . . . . . . . . . 81.8.3 Geometrically nonlinear Plate Analysis . . . . . . . . . . 8

1.9 Real Quantifier Elimination in the RegularChains Library: MorenoMaza . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

1.10 Skolemization Modulo Theories: Veanes . . . . . . . . . . . . . . 91.11 QBF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.12 Quantifier Elimination for Modular Constraints; John . . . . . . 10

2 6 August 2014 112.1 Principles of Independence for Robust Geometric Software Learned

by the Human Visual Computation: Sugihara . . . . . . . . . . . 112.2 Discourse-level Parallel Markup and Meaning Adoption in Flex-

iformal Theory Graphs: Kohlhase . . . . . . . . . . . . . . . . . . 132.3 Theorema 2.0: A System for Mathematical Theory Explanation:

Windsteiger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.4 Complexity Analysis of the Bivariate Buchberger Algorithm in

Theorema: Maleszky . . . . . . . . . . . . . . . . . . . . . . . . . 142.5 Towards Formalising a key theorem from Auction Theory using

Theorema: Windsteiger . . . . . . . . . . . . . . . . . . . . . . . 15

1

Page 3: International Congress of Mathematical Software 2014

2.6 An algorithm for computing Tjurina stratifications of µ-constantdeformations using algebraic local cohomology: tajima . . . . . . 16

2.7 An implementation method of Boolean Groebner bases and com-prehensive Boolean Groebner bases on general computer algebrasystems: Nagai . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.8 Mathematical hierarchies of Sudoku puzzles and its computationby Boolean Groebner bases: Inoue . . . . . . . . . . . . . . . . . 17

2.9 A method to determine if two parametric polynomial systems areequal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

2.10 Software for Quantifier Elimination in Propositional Logic . . . . 182.11 Quantified Reasoning over the Reals: Gao . . . . . . . . . . . . . 18

3 7 August 2014 203.1 Chebfun as a software project: Trefethen . . . . . . . . . . . . . 20

3.1.1 Chebfun (demo) . . . . . . . . . . . . . . . . . . . . . . . 203.1.2 Twenty Questions . . . . . . . . . . . . . . . . . . . . . . 20

3.2 Business meeting . . . . . . . . . . . . . . . . . . . . . . . . . . . 223.2.1 This meeting . . . . . . . . . . . . . . . . . . . . . . . . . 223.2.2 Byelaws . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233.2.3 Future . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.3 BULL! Molecular Geometry Library: Deok–Soo Kim . . . . . . . 233.4 Regular Chains: Moreno Maza . . . . . . . . . . . . . . . . . . . 25

3.4.1 Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . 25

4 8 August 2014 264.1 Numerical Algebraic Geometry: Theory and Practice: Sommese . 26

4.1.1 Positive-dimension . . . . . . . . . . . . . . . . . . . . . . 274.2 An Introduction to Software in Numerical Algebraic Geometry:

Hauenstein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284.3 Paramotopy: software for parameter homotopies: Bates . . . . . 284.4 Hom4PS 3.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294.5 Bertini Real: software for real algebraic sets . . . . . . . . . . . . 294.6 Quantifier Elimination Software based on comprehensive Grobner

systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314.7 Iwane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314.8 Software using the Grobner cover for geometrical local computa-

tion and classification: Montes . . . . . . . . . . . . . . . . . . . 324.8.1 Locus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

4.9 Using Maple’s RegularChains Library to automatically classifyplane geometric loci: Botana . . . . . . . . . . . . . . . . . . . . 33

4.10 Solving Parametric Polynomial Systems via RealComprehensiveTriangularize:Moreno Maza . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4.11 A Package for Parametric Matrix Computation: Thornton . . . . 344.11.1 Zigzag form . . . . . . . . . . . . . . . . . . . . . . . . . . 34

Page 4: International Congress of Mathematical Software 2014

5 9 August 2014 355.1 Computer Discovery and Visual Theorems in Mathematics: J. Bor-

wein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355.1.1 Visual Theorems . . . . . . . . . . . . . . . . . . . . . . . 355.1.2 Case Studies . . . . . . . . . . . . . . . . . . . . . . . . . 365.1.3 Random walks . . . . . . . . . . . . . . . . . . . . . . . . 36

5.2 Cylindrical Algebraic Decompositions in the RegularChains Li-brary: Moreno Maza . . . . . . . . . . . . . . . . . . . . . . . . . 36

5.3 Choosing a variable ordering for truth-table invariant cylindri-cal algebraic decomposition by incremental triangular decompo-sition: Davenport . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

5.4 Using RegularChains to do Projecting/Lifting CAD; England . 375.5 Hierarchical Comprehensive Triangular Decomposition: Tang . . 385.6 Doing Algebraic Geometry with the RegularChains library: Moreno

Maza . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385.6.1 Two plane curves . . . . . . . . . . . . . . . . . . . . . . . 38

5.7 Computing Moore-Penrose inverse: Zhang . . . . . . . . . . . . . 395.8 Multivariate Birkhoff Polynomial Interpolation . . . . . . . . . . 395.9 An Improvement of the Rosenfeld–Grobner Algorithm: Hashemi 405.10 Bertini for Macaulay2: Rodriguez . . . . . . . . . . . . . . . . . . 405.11 Using Monodromy to avoid high precision: Niemerg . . . . . . . 415.12 Software for MKM: Ion . . . . . . . . . . . . . . . . . . . . . . . 41

Page 5: International Congress of Mathematical Software 2014

Chapter 1

5 August 2014

1.1 Math Soft/Soft Math: Buchberger

This will be a “political” talk, and subjective (possibly provocative).In mathematics we think deeply, once to produce insight, in order not to

think about infinitely many instances of the insight.

Example 1 If t|x and t|y then t|x− y, and this insight gives us the Euclideanalgorithm.

Note the importance of meta-mathematics, mathematics applied to itself. Thisgives us metamatics.

Example 2 The Roman calculation XIII·IX (=117=CXVII). Apply the dis-tributive law, which is easier in a positional system, and then we get a multipli-cation algorithm.

Example 3 F is a Grobner basis iff ∀f, g ∈ FS(f, g) →F 0, and this solvesthe problem of recognising a Grobner basis, and more subtly an algorithm forcomputing one.

Example 4 Show that Newton iteration converges to an interval including√x:

a := ab+xa+b , b := x+b2

2b . But suppose we vary the iteration. See [EH13].

Example 5 (Generalise Example 3) Idea.

1. Attempt a correctness proof for P using an algorithm scheme

2. When this doesn’t verify (it won’t) extract specifications for sub-algorithms

3. Recurse

Claims that, had Grobner had this paradigm, Buchberger himself would havebeen redundant.

Note that Godel incompleteness means that the (meta-) hierarchy will neverterminate. Hence “our works always becomes more exciting, and we leave moreinteresting problems to the next generation”.

4

Page 6: International Congress of Mathematical Software 2014

1.1.1 We live in a mathematical world

Example 6 My luggage is in Hong Kong, identified by mathematics, and it ishard to explain that baggage clerks live by mathematics.

Professors have a direct responsibility to explain the nature of mathematics, anddo that in the language of our customers. In particular we have an obligationto explain this via programming languages, as the computer is the ultimate tothe idiot.

Example 7 NIST tables [OLBC10] can now have much more verification ap-plied to them.

It is up to the mathematicians, not school teachers, not government, to lead therecognition of mathematics. We must not give up the use of software as part ofthis explanation process.

This progress will lead to a great change in the way mathematical knowledgeis disseminated: moving beyond digitised formulae to actual digitised knowl-edge.

There is a two-fold risk:

People no need to teach the theory: just press the button;

Purists we shouldn’t use technology, because of this risk.

Hence I have a “white-box, black-box” principle: no time to explain.

Q We need an orchestra: we can’t all be equally good at software,politiciansetc.

A Yes and no. I play in a band, and I need to appreciate what the othermembers do.

1.2 Flyspecking Flyspeck: Adams

I work now for FireEye Dresden: a firm producing verified anti-malware. Notethat mathematical proofs are getting longer (e.g. FSG) and use computers (e.g.Four-colour, Kepler). Theorem-prover is a program that implements a formallogic to recreate proofs.

1. Four Colour Theorem [Gonthier, Coq]

2. Feit-Thompson lemma [Gonthier, Coq] [Gon12]

3. Kepler Conjecture [Hales et al., HOL Light] [Hal12].

So why should we trust these formalisations? Flyspeck breaks task down intolemmas, which are farmed out to workers who get paid a bounty for each lemma.Almost finished, and we have 500Kloc of HOL Light. Note that the theoremis 4-lines, uses ball, packing (defined as a set of points ≥ 2 apart) etc. Note

Page 7: International Congress of Mathematical Software 2014

that we need to know that all added axioms (if any) are consistent. Also, do wetrust the theorem prover. There is “Pollack-consistency” — is the statementprinted out what the internal state believes?

HOL Light Doesn’t capture basic type definitions (Hales uses this to importresults1), Pollack inconsistency, OCaml vulnerabilities.

Coq Large trusted kernel (occasional unsoundness reported), complex formallogic, Pollack inconsistency, OCaml vulnerabilities.

Hence auditing the proof is nontrivial. Am trying to produce a theorem-checkerHOL Zero that is just that much smaller. I think the Coq kernel have made toomany compromises.

1.3 Symbolic Computer Package for Mathemat-ica for Versatile Manipulation of Mathemat-ical Expressions

I particular we want to talk about unevaluated derivatives etc. Note that weallow multiple notations for derivatives.

1.4 Representing, Archiving and Searching theSpace of Mathematical Knowledge: Kohlhase

Claims that mathematics does this wrong, by being document-focused. Notethat documents don’t appear in Buchberger’s creativity spiral. In the actualdoing of mathematics, we abstract away from syntactic differences, recogniseknown parts, and identify unknown parts.

It is less work, and more pleasant, to program a graduate studentthan a theorem prover.

Claims that the mathematical knowledge space is the structured space of rep-resented and induced mathematical knowledge. Current search engines work inthe represented space, not the induced space.

MatWebSearch showed

Mizar Applicable Theorem Search, but depends on knowing what is free/substitutable.

MMT Shows the modular tree [Rab13]. Note that the import statements mayrename, but are truth-preserving. A drawback of this is that the axiomsof ring, say, are not in one place. This flattening processes induces a actorof 40 in the LATIN database. Searching on this is the first thing MK hassees that searches the induced knowledge.

1Some lemmas take thousands of hours.

Page 8: International Congress of Mathematical Software 2014

1.5 Grobner Cover: Montes

The C-representation of a segment S is V(p) \V(q). The P -representation of

S is a set⋃j

(V(pj) \

⋃j V(pi,j

).. See [Wei92] for existence, various papers

improving the output

1. Homogenise w..r.t. variables

2. Compute a disjoint reduced Comprehensive Grobner System

3. Compute the P -representations

4. Add the segments with common lpp

5. Dehomogenise

6. For every segment, compute generic representation

7. If necessary, full representation

Example 8 (Steiner–Lehmus) [MontesRecio2014]. Challenge is to distin-guish internal bisectors from external.

1.6 Maximum Likelihood Function for Parame-ter Estimation in Point Clouds by Grobnerbases

A laser system produces a vast point could.

Q Also used for reconstructing African temples. What’s new here?

A Nonlinear (?).

Q Were these floating point Grobner bases?

A In fact exact arithmetic. Mathematica.

1.7 What’s new in CoCoA: Abbott

Also presented at ICMS 2006, 2010. Pascal first, then C. A closed-source pack-age.

2000 New design

CoCoAlib Open source C++ Library.

CoCoA-5 specialised interactive server

CoCoAServer An OpenMath “server program”.

Page 9: International Congress of Mathematical Software 2014

Motto “No nasty surprises”.

Lists [...] —shows “intuitive” examples. The input is readable.

Approximate arithmetic via TwinFloats — note that we assume the startingvalues are “exact”. Example with TwinFloat reporting that more precisionis needed.

Note that there’s a natural route: write in CoCoA-

Q-JHD One of the aims of COBOL was that it should be readable by managers,and that didn’t work. Will it work for you?

A Good point! Shows continued fractions. There’s a built-in CoCoAlib iterator.

Q CoCoA, unlike Singular, is not strongly typed.

A This is almost a philosophical question. Comparing objects of different typesis a good example — should you give an error, in which case looking upitems in heterogenous lists doesn’t really work. Therefore CoCoA doesn’t.

1.8 Application of Groebner Bases to NonlinearMechanics Problems: Liu

1.8.1 Large Deflection Static Cable Analysis

Power lines, mooring systems, bridges. L is initial cable length, A is cable cross-section, Q is a constant force per unit of undeformed length, and perpendicularto the cable. q is self-weight per unit length: q � Q. E is Young’s modulus, andT0 is cable’s pre-tension. Let u and v be horizontal and vertical displacement.T is the real tension. Get nonlinear differential equations.

1.8.2 Another cable problem

1.8.3 Geometrically nonlinear Plate Analysis

Equally, want the displacement, in-plane and transverse.All these problems are examples of nonlinearity, which is key to many appli-

cation areas. Various ways to convert differential equations to algebraic ones.Note that we still need numerics if polynomials have degree > 4. An examplewith Galerkin conversion has degree 25. It does produce subtly different resultsfrom the linearised analysis. The plate does give a third-degree equation, hence“analytic” solutions.

Q But this is only numerical — heated debate.

A Her trial functions show about a 1% difference from Ansys simulations.

Page 10: International Congress of Mathematical Software 2014

1.9 Real Quantifier Elimination in the Regular-Chains Library: Moreno Maza

Define Quantifier Elimination. Unifying concept is that of “regular chain”. Aheavily-typed Maple library.

Showed an example which he claimed2 to be [DH88], but said this eliminatedto (d− 1 = 0) ∨ (d+ 1 = 0), which he stated was false.

Define CAD. First idea was projection/lifting. Our new idea is based on RCs,but more precisely on “case discussion”. Example where Quantifier Eliminationcan’t be done directly, since we may need to express RealRoot2(f), which needsderivatives of f . Example [ST11], which we solve in 15 seconds.

Q That was just satisfiability.

A Yes, but many problems are not.

1.10 Skolemization Modulo Theories: Veanes

Skolemisation eliminates quantifiers in favour of function variables. preservessatisfiability. Original use of Symbolic Finite Transducer (SFT).

1.11 QBF

Quantified Boolean Formulas. Pspace-complete. many applications in modelverification. Potentially exponentially more succinct than non-quantified Booleans.In practice we have a family of related QBFs to be solved: how can we use this?Use backtracking/resolution. Assume Boolean φ in CNF, quantified by blocksBi of variables. No free variables. Showed a high-level DLL algorithm spe-cialised to QPF. basic backtracking plus constraint learning (both constraintsand cubes). There are issues with incremental learning: must discard things nolonger true.

Doing incremental solving, we want to to re-use a maximal subset of theconstraints learned when solving φi when solving φi+1. Solvers tend not tomaintain the derivation. We add a fresh existential variables (selectors) to eachclause, then these propagate to learned constraints. Don’t seem to have a goodway of propagating learned cubes.

Example 9 (Conformant planning) Incremental approach solves more, in14.5 rather than 24.4 seconds. However, we have examples where the conversebehaviour is true, which is odd.

http://lonsing.github.io/depqbf.

Q–JHD Is it just φi that feeds into φi+1?

2JHD: it’s not. He seemed to have the Heinz construction, but didn’t have thereal/imaginary split.

Page 11: International Congress of Mathematical Software 2014

A No, all learned information is available.

1.12 Quantifier Elimination for Modular Con-straints; John

We have linear modular equalities (LME), inequations (LMD) and even inequal-ities (odd, since modular). Tends to work either by bit-level blasting, or goinginto integers.

∃x((2x+ z 6= 0) ∧ (2x+ 3y = 4) ∧ (xy ≤ 3) (mod 8)

The moduli are powers of 2, so sometimes bits are irrelevant. Layer 3: can doa Fourier–Motzkin style Quantifier Elimination.

∃x.((y ≤ 4x) ∧ (4x < z))

which gives a FM case analysis. The number of cases is independent of the bitwidth, and really only depends on whether left/right side overflows.

If all else fails, do model enumeration, but we have never needed to.Benchmarks from LinDD [Chakietal2008] regarded as 16-bit integers. Also

VHDL examples. For VHDL, layer 3 was only used 0.5% of the time.We are combining DD and SMT, which are very different algorithms, and

this combination is more powerful than either. Future work; non-linear.

Q FM normally requires a variable that isn’t multiplied. How do you avoidthis?

A There are limitations, but we seem always to get round this.

Page 12: International Congress of Mathematical Software 2014

Chapter 2

6 August 2014

2.1 Principles of Independence for Robust Geo-metric Software Learned by the Human Vi-sual Computation: Sugihara

We can avoid failure of geometric computation, even if we use im-precise computation, provided we respect independence.

Numerical computation normally gives imprecise results, but in geometry,this can cause inconsistency, and hence no result.

Example 10 (Voronoi diagram) Incremental method, add one point at atime, adding perpendicular bisectors one at a time. This should give a closedcurve of new lines, but if this fails,not just numerically but topologically, we havea problem.

Example 11 Various optical illusions are basically caused by failing to recon-struct 3 (z coordinates) from a 2D drawing. We have various equalities, and in-equalities representing “F1 hides F2” etc. Then “picture represents polyhedron”⇔ “A.w = 0, B.w > 0 has solutions”. But if he tries a truncated tetrahedron,the software fails as the three lines, which should be coincident in the point ofintersection of the three planes, are not exactly coincident.

The obvious solution is to introduce “fuzz”, but then the Penrose triangle isaccepted as valid as well.

There are basically three approaches to numerical error.

1. Three-valued logic [Milencovic1988,Guibas1989,Fortune1989][Hof89], butthis has almost disappeared today.

2. Exact Computation (Mehlhorn/Pion/Yap). Many people pursue this.

3. Topology-based. [SugiharaIri1989,Sugihara2013]. Aim of today’s talk

11

Page 13: International Congress of Mathematical Software 2014

An optical illusion is an extreme response of the human visual system.

Example 12 (Slanted Line) [Fraser1908] Black/white diagram looks like aspiral, but tracing in colours proves it’s concentric circles.

Example 13 (Slanted characters) In Kanji: Meaningless sequence, but getthe illusion of sloping lines even though the characters are in fact properlyaligned.

Example 14 Ouchi illusion [Spillmannetal1986].

Note that, in the human visual system, each neuron covers a small area of theretina. Each neuron detects one component (vertical or horizontal) of move-ment.

Example 15 (Escher’s staircase) Note that this is possible if one flight issloping. But the human brain prefers aligned rectangles, so perceives an impos-sibility.

Example 16 Also a video (in fact five) with “impossible motion”, since thebodies are in fact slanting, but we perceive verticals. Even having had the 3Dstructure rotated, and the illusion “explained’, when it rotates back to originalposition, the illusion is restored.

Also, human visual computation is local, and does not change as a result ofglobal inconsistency.

It is inconsistency, not error, that causes the geometric failure. Hence wemust divide our predicates into independent ones P1, . . . , Pk and other (depen-dent) ones Pk+1, . . .. Nice principle, but hard to implement. So our principleis to place higher priority on the preservation of topology. In Example 10, wewill need to remove only a tree-structure from the old Voronoi diagram whenadding a new point, and numerical calculations that contradict this should beignored.

“Extract mutually independent predicates and use numerical computationfor them only. Then we can achieve numerical robustness.”

Q How do you determine independence?

A That’s hard: involves knowing all geometric theorems. Hence topologicalconsistency is easier.

Q Is the logical reasoning done by hand?

A Currently. I looked at the Voronoi diagram one, and it as computationallyinfeasible.

Q Is the “rectangular preference” nature or nurture?

A The psychological community is not convinced of this preference, actually.Small children are upset by these illusions, which implies something —what?.

Page 14: International Congress of Mathematical Software 2014

2.2 Discourse-level Parallel Markup and Mean-ing Adoption in Flexiformal Theory Graphs:Kohlhase

Yesterday (Section 1.4): “documents are bad”. Implemented in MMT, wherethe arrows in the diagram are actually “clickable”. These assumes that allmathematics is formalisable.

1. printed

2. digitised

3. presentational (claims “this means it can be read to you by a screen-reader”)

4. semantic (a minuscule fraction)

We believe that mathematics is formalisable, but don’t do that in practice.Note that Flyspec (section 1.2) is maybe 3 years of mathematics and 20 offormalisation.

Claim that we need parallel markup — semantics and presentation,suitablycross-referenced. Multiple presentations supports multiple natural languages.

However, mathematical texts are more than formulae. Shows parallel markupof a definition (largely words) and formal mathematics. We need to take infor-mality seriously in theory graphs. Therefore proposes an extension of MMT,“postulated views”1, and this means that the “black box” informality becomes“grey box”. Therefore OMDoc 2 is/will be OMDoc with MMT/opaque.

Q Use by people outside your group?

A Yes, we have a semantic atlas . . . .

2.3 Theorema 2.0: A System for MathematicalTheory Explanation: Windsteiger

Theorema aims to support all aspects of mathematical work. Hence my pre-sentation here is a Theorema document. Claims that this should be the “penciland paper of 21st century”. Implemented in Mathematica, i.e. the programminglanguage and the notebook front-end. Mathematica algorithms are callable, butare not automatically invoked. Have the notebook interface, but also the “The-orema commander” window

This differs from Section 1.2, in that we don’t have a small kernel, rather amulti-method prover. The language is higher-order predicate language (curryingetc.). Instead of a small trusted kernel, trust should come from readable proofs.

1JHD understands “postulated” to mean “user-claims that this is a correct view”.

Page 15: International Congress of Mathematical Software 2014

There could also be a program that inspects the proof object, but we have notdone this.

The challenge is integrating proving and computing (and solving, but whatdoes this mean?). Shows an example, and the fact that each Theorema knowl-edge item can be deactivated from a graphical window.

Example 17 If A ⊆ B, then A \ C = A ∩ (B \ C). There’s a formal transla-tion, with ⊆ all replaced by elementary membership statements. Shows both thenotebook, and a tree representation of the proof, which are mutually clickable.

Q Is Theorema multilingual?

A Theorema 2 also has German, and Theorema 1 also had Japanese.

Q Note the flattening in the example.

A-Buchberger Not necessary: we could have a set-theory prover working interms of these definitions.

Q Do you need Mathematica?

A Yes, we need that, so Theorema itself is free, but you need Mathematica.

Q–JB SAGE implementation?

A No.

Q–MK There’s a lot of state from the commander in the proof — is thisrecorded.

A Yes: it’s in the proof object, and these can be re-loaded.

2.4 Complexity Analysis of the Bivariate Buch-berger Algorithm in Theorema: Maleszky

This is based on [Buchberger1980], which uses the chain condition.

Theorem 1 In a graded ordering, then deg(G) ≤ 2 deg(F ), where G is aGrobner base of F in K[x, y].

1. Tuples, orders etc.

2. Rewriting lemmas, e.g. about

x+ minAa = min

A(a+ x). (2.1)

3. Lift these lemmas to inference rules. This is more efficient, but also pro-duces more natural proofs. Also knowledge about quantifiers.

4. Introduce deg, lcm, chain criterion etc.

Page 16: International Congress of Mathematical Software 2014

5. Rewrite lemmas for these, using the rules in set 3

6. prove main theorem.

Note that (2.1) becomes

(Ψ ` Γ)min(〈t|i=a,...,bφ〉)+x→min(〈t+x|i=a,...,bφ〉)

(Ψ ` Γ)(2.2)

The proof: 292 formulae and 230 proofs, with 29 inference rules. 3400 Mathe-matica LoC. In fact more general than the original proof. Also simplified.

Q–Greuel I don’t believe the theorem.

A Note it’s only true in two variables.

Q What is a “specialised prover”? How do I trust this.

A Our provers are not provably correct. However, the inference rules are sup-ported by lemmas.

Buchberger It would be nice to have a general proof that this lifting techniqueis correct. Example: in analysis texts, theorems are proved about limapplied to functions, them applied to formulae etc.

MK I think this is Wang’s “apply theorem”, and as such is in Isabelle.

2.5 Towards Formalising a key theorem from Auc-tion Theory using Theorema: Windsteiger

Joint work with Kerber and Rowat (Birmingham): challenge posed by [Ker-ber2010 at MIPS]. The theorem isn’t fully proved yet. Example is auctionsfor mobile spectrum, some of which have been unsuccessful (in terms of lowincome). Economists blame “poor auction design”: auctions are designed onpaper. We use “second price auctions of a single indivisible good”.

Theorem 2 ([Vic61]) In this setting, truth telling is a weakly dominant strat-egy, i.e. no bidder can do strictly better by bidding above or below her valuationof the good, whatever the others do.

A previous formalisation: “ Vickrey’s theorem is stated in two sen-tences and proved in six. We need eight problem-specific defini-tions.”

Theorema needed additional lemmas, to reason about maxima.

Q–MK “Formalism is good” isn’t true for humans.

A When I question the authors, I get “this is not well-written” etc.

All A debate about the role of Theorema — AK: “every paper followed bya Theorema notebook”, WW: “No, every paper should be a Theoremanotebook”.

Page 17: International Congress of Mathematical Software 2014

2.6 An algorithm for computing Tjurina strat-ifications of µ-constant deformations usingalgebraic local cohomology: tajima

Definition 1 f is quasi-homogeneous of degree d,w is the w-weighted degree isd. f is semi-quasi-homogeneous of degree d,w if it if f0 + f1 where f0 is quasi-homogeneous of degree d,w with an isolated singularity at the origin and f1 hashigher degree.

τ is the Tjurina number, and µ the Morse number. τ = µ ⇔ f is quasi-homogeneous, Since µ− τ is a complex analytic invariant that measures the no-quasi-homogeneity of a hypersurface isolated singularity. So consider a parametrisedpolynomial, e.g. x3 + y10 + ax... + by... with w = (10, 3). Then µ = 18 (JHD:why) and τ depends on whether a, b are zero.

Any element of the local cohomology can be represented as Cech cohomology.The first step (basis of vector space) is computable [?]. Then for each conditionof the parameters we . . . Comprehensive Grobner basis.

2.7 An implementation method of Boolean Groeb-ner bases and comprehensive Boolean Groeb-ner bases on general computer algebra sys-tems: Nagai

Note that Boolean Grobner Bases are not the same thing as F2[xi]/(x2i − xi).

Rather, they are over B. B is any commutative ring such that ∀b ∈ B : b2 =b, b + b = 0. Besides F2, we have F2 × F2, a family of sets with · = ∩ and +being “xor”. B[x1, . . . , xn]/(x21−x1, . . . , x2n−xn) = B(x1, . . . , xn) is a “Booleanpolynomial ring”.

Theorem 3 (Stone) B ≡ Fk2 : the isomorphism is the compositum of manyprojection maps. Since we can compute in F2[x1, . . . , xn]/(x21−x1, . . . , x2n−xn),this gives us one route.

Using polybori, we can do this in Sage or Asir.

Buchberger I used to do Sudoku, but you’ve ruined it.

Q Compare SAGE/ASIR?

A Sage 10× faster (3.1: 39) for the F2 computation, but Sage spent a greatdeal of time (> 200 seconds) reconstructing over B. Maybe I need Sagehelp.

Page 18: International Congress of Mathematical Software 2014

2.8 Mathematical hierarchies of Sudoku puzzlesand its computation by Boolean Groebnerbases: Inoue

Sudoku difficulty levels are heuristically-assigned. Xi,j is an element in theSudoku grid, and B = P ({1, . . . , 9}). Sudoku structure induces equations(row/column/block). let I be the ideal generated by these. Let Sing denotesthe subset of B9

Definition 2 f(x) = x + {s} is called a solution polynomial, and f(x) ={s1, . . . , sl} + {si} (1 ≤ i ≤ l), f(x) = (1 + {s})x are called semi-solutionpolynomials. Any of f(x) = a, f(x) = x or f(x) = ax + b (with |b| > 1) arecalled contradiction polynomials.

Definition 3 I is solvable if VSing(I) 6= ∅, and uniquely solvable if this hascardinality 1.

Define ψ0 and ψ∗0 on ideals. If ψ∗0(I) is maximal, generated by 81 polynomials,we say thatI is basic solvable. For these we can classify by basic rank.

However, some polynomials are solvable but not basic solvable. Concept ofbasic refutable rank. If ψ∗∞I) is maximal, we say that I is strategy solvable.Then the point at which ψ∗k(I) stabilises is the strategy rank.

We computed the ranks of 735 Sudoku’s, classified 1–7 humanly. We seesome correlation. The “World’s Hardest” has s-rank ∞

Q–JHD Anything special about 9?

A No.

Q Does this imply that every human strategy will assign a finite rank?

A Yes

2.9 A method to determine if two parametricpolynomial systems are equal

Problem 1 Given an ideal I and a polynomial f , is f ∈ I. Solved by Grobnerbases.

Problem 2 Given a parametric ideal I and a parametric polynomial f , is f ∈ Ifor any values of the parameters?

Problem 3 Given parametric ideals I, J J = I for any values of the parame-ters?

Let R be the parameter ring k[u1, . . .]Let E be a subset of R, and V(E) thecommon zeros in km.

Page 19: International Congress of Mathematical Software 2014

Lemma 1 ([Sit2001]) If I1 and I2 are quasi-algebraic sets, the I1∩I2 is quasi-algebraic. Quasi-algebraic is V(E) \V(h).

Comprehensive Grobner Bases. {(A1, G1) . . .}. The Ai are algebraic sets. Howdo we compare these?

Example 18 Same polynomials, Comprehensive Grobner Bases by [SS01], [KSW10]are different2. Are they the same?

Theorem 4 (Polynomial membership) For each branch (A,G), let r be thepseudo-remainder of f by G. Then (*).

Theorem 5 (Ideal membership) For each branch (A,Gi), let r be the pseudo-remainder of f by Gi. Then (*).

Theorem 6 (Ideal equality) Let G1 be a Comprehensive Grobner Basis of Iw.r.t. <1 and G2 be a Comprehensive Grobner Basis of J w.r.t. <2 . For everypair of branches (A,G ∈ G1, (B,H) ∈ G2, let the ri be the remainder of thegenerator of H w.r..t G and qj vice versa. For each branch (A,Gi), let r be thepseudo-remainder of f by Gi. Then (*).

JHD: (*) appears to be checking that the remainder (being nonzero) is incom-patible with the A components.

2.10 Software for Quantifier Elimination in Propo-sitional Logic

Assume a CNF F (X,Y )., and consider ∃X : F (X,Y ), which is ≡ H(Y ). Thisis relevant to reachability analysis.

The aim is to make the X-clauses redundant by adding resolvents: C isredundant if ∃XF ≡ ∃X[F \ {C}]. This is hard in general, but can approachvia branching.

Use “atomic D-sequents”.Partial Quantifier Elimination. Given ∃X(F ∧G) find H(Y ) such that H ∧

∃XG ≡ ∃X(F ∧G)

Q How to find the maximal F?

A Describes various methods, but it looks heuristic.

2.11 Quantified Reasoning over the Reals: Gao

R,≥,F . For example

∃y∀x0∀t∀xt(x0 = 0∧xt = f(x0, u, t)∧xt = 1)→(∫ t

0

c(x, u)ds <

∫ t

0

c(x, u′)ds

)2JHD: the [KSW10] is not completely reduced, and if you do, you get the [SS01] basis.

Page 20: International Congress of Mathematical Software 2014

is stability.his is great but the problem is nonlinearity.

In this wild world we can’t stick purely to symbolic methods

Quantifier Elimination is both more and less than is needed.Assume F s type 2 Turing, i.e. allow real numbers represented as infinite

sequences of rationals.δ-weakening is replacing > by delta+. So we want an algorithm that says:

“φ is true” or “φdelta is false”

Theorem 7 The δ-decision problem for a Σk-sentence is in [some complexityclass].

dreal.cs.cmu.edu — used by Toyota etc.

Page 21: International Congress of Mathematical Software 2014

Chapter 3

7 August 2014

3.1 Chebfun as a software project: Trefethen

I am a numerical analyst. For every one of you [symbolic folk] thereare ten thousand of us. Floating-point arithmetic is fantastic.

Note that floating-point works by rounding, and this is also the principle ofChebfun. I care passionately about my ideas, and Chebfun: how do I ensurelongevity?

3.1.1 Chebfun (demo)

In MatLab 2014a.

x=chebun(’x’,[-1,1]);

f=cos(100*x);

length(f); % returns 149, so a

g=/(25*x^2);

length(g); % returns 181

h=f.*g;

length(h) % less than 329, since Chebun rounds

Done by large amounts of Matlab overloading of built-in operators.More recently, Chebfun does two-dimensions, using chebfun2.

3.1.2 Twenty Questions

I’m a newcomer(ish) to software engineering.

1. What do you do to make software last. In-house project; company; opensource? I’m too old for (1), and the team didn’t want (2) — might it havebeen different in the US, or in Korea? Hence number 3, but genuinely, inthe sense that we are open to outside developers.

20

Page 22: International Congress of Mathematical Software 2014

2. Which licence? Basically BSD or GPL. People told us “companies arescared of GPL”, so we went to BSD (I forget which version!). But thereare university bureaucrats, so we had to convince them that Chebfun wasworthless.

3. Which programming language? We had five years of MatLab behind us.The overloading of MatLab was what inspired us. Look at the list of“most frequent 500 commands” in MatLab, and see which to overload.But there are concerns

(a) Speed — good at what it’s good at, but . . . .

(b) Language – untyped, and non-matrix objects are curious.

(c) Commercial software: most universities in the US have it, but lesscommon (legally) elsewhere.

Parts of “core” Chebfun (i.e. 2005) have been recoded in C/Octave/Python/. . . .

4. How do make money out of Chebfun? We don’t at the moment. One daywe might found a consulting company.

5. How do we get funding? This is a challenge, especially in Britain. EP-SRC CS (no money from Maths), MathWorks, and ERC grant (which,in principle, is funding algorithmic/mathematical research, not softwaredevelopment).

6. How do people get credit for work on software? I think this does count forme, as a “visible person”: harder for youngsters, especially students/postdocs.

7. How do we learn about open source software? Recommended a book byFagan.

8. Where do we host the code? Now GitHub — this has gone from 0 to 107

repositories in 6 years.

9. What’s the coding and review process? We’re in GitHub’s pull request//review/merge process, which seems to work for us. Long discussionsabout spacing, Camel Case etc.

10. Testing? Introduced ’chebtest’ in 2008. Rely (perhaps too much) onMatLab’s platform independence.

11. Who responds to help? We have a tracker,and mail request. We haven’treally addressed this.

12. How to make a good website? We have one bright guy!

13. Documentation? People do detailed comments, but I end up writing mostof the

Page 23: International Congress of Mathematical Software 2014

14. How do we get feedback from users? Badly! No registration process, andno database of users. Our knowledge is very anecdotal. Showed a GoogleScholar list of citations of chebfun, with exponential growth (doublingevery 2 years). Contrary to belief, this doesn’t count duplicates — I

15. How should people cite Chebfun? We don’t have a key paper. We nowpublish a new book every year, with three editors. Please cite this!

16. How does the team communicate? Oxford (most)/Delaware/Stellenbosch.Weekly meeting, with Google hangout1 for the externals. Externals stillcomplain.

17. How do we attract outside developers? We don’t currently

18. Should we plan ahead? There’s no requirements analysis etc. Most de-velopments just “happened”. We probably ought to get a bit better atit.

19. What do we fight about? Relative priorities. NT regards backwards com-patibility as vital, while the youngsters care more about speed and func-tionality.

20. What’s our management structure? Most procedures aren’t spelled out.Notionally we’re a democracy, but (heavily) weighted. How to balance“hallway chats” with a distributed team?

Q–JAA Software has a value, but isn’t counted. I made this mistake and I amnow unemployed.

A These are serious issues.

3.2 Business meeting

3.2.1 This meeting

Attendees: Japan top (30), then USA (18) and Korea (13) and a total of 130.By self-declaration: 62 mathematics, 29 CS, (out of 100 online registrations).92 staff and 19 students, 8 free students and 9 reduced-rate.

1Used to be Skype, but that was frustrating.

Table 3.1: ICMS 2014: IncomeRegistration 34,950,000Hanyang 10,000,000NIMS 20,000,000

Page 24: International Congress of Mathematical Software 2014

3.2.2 Byelaws

The current byelaws were put up. The officers are currently self-sustaining, andthere is no provision for elections.

MK It is useful to have a structured name for the conference, for people tocontact. A domain is also useful, and the obvious .info is free.

Hong (many seconded) there should be a 2/3 requirement on the changes ofbyelaws. JHD suggested for for e-mail it should be “2/3 of those votingwith a minimum of 30”. It was modified to be “2/3 of those present ata Business Meeting, or 2/3 of those voting by e-mail with a minimum of30”. Carried.

Byelaws Carried.

3.2.3 Future

Meetings

Publications MJ mentioned various existing publications

1. One in optimisation

2. Macaulay journal, now Algebra and Geometry

NT ACM ToMS.

JHD LMS JCM.

* I don’t put software in journals as they demand copyright — in debatethis turned out to be ACM.

He thought that a list of “software-friendly” journals should be maintainedon the ICMS website.

Borwein The “Brown” workshop on reliability [SBB+13]. We have an absenceof standards, rather than an absence of journals.

MK moved a vote of thanks to the organisers. Carried.

3.3 BULL! Molecular Geometry Library: Deok–Soo Kim

We now know how to decode the human genome. But what does the workis the proteins. Their primary structure is given by amino-acid bonds, whichis composed into secondary structure by hydrogen bonds, then ternary andquaternary structures. These are published in NIH’s protein data bank. Itis agreed that a protein’s function depends on its structure, but there is lessagreement on what “structure” means. For example, what is the surface, thevoids etc.?

Page 25: International Congress of Mathematical Software 2014

Obama launched the Advanced Manufacturing Initiative. Note in particularMetal-Organic Framework (MOF). Need to understand the boundary and thechannel structure. Again, want to know if there are voids/tunnels. Applicationsin fuel cells, Lithium batteries etc.

Claims that Voronoi diagrams are key to this. This gives answers to con-vex hull shortest path, and many other problems. The dual is the Delaunaytriangulation.

We need the “additively-weighted Voronoi Diagram”, where we look atdistance from boundary of circles/spheres, rather than fro points. No longerstraight lines, but hyperboloids. We still get Voronoi cells. has a dual structure,known as “quasi-triangulation”. Consider a ball of radius β, and ask where itcan pass between circles/spheres, and remove the lines through which it canpass. This gives β-complex. Given the β-shape, it is easy to compute the offsetshape.

The following situation can arise with respect to β-complexes. We have twotriangles sharing two vertices, which means we do not have a simplicial complex.Showed an example in 2D, then one in 3D. Here we get two tetrahedra sharingthree faces, hence one has positive volume and one negative. There is anotheranomaly, known as “dandling face/small world”, but that is all the anomalies.

Definition 4 A simplicial complex C has two conditions

1. Any face on an element in C is also in C;

2. two elements of C, if they intersect at all, intersect in one element of C.

Definition 5 A quasi-simplicial complex C has two conditions

1. Any face on an element in C is also in C;

2. two elements of C, if they intersect at all, intersect in one or more ele-ments of C.

How common are anomalies? In practice very rarely, either on real proteins oron “random” data. Have been working on “topologically-reliable” alternativealgorithm based on ideas from Section 2.1.

I propose that we transform molecular problems into geometric problems,where we can look for geometric solutions. The inverse transform to recover themolecular solution is, he claimed, similar to the electronic structure calculations.

Pure code can be downloaded. Has APIs for VD, QT and BC, aimed atdevelopers/mathematicians, and a molecular modeller API. Example: once theVD and QT are computed, can, for example, count boundary atoms etc.

Q–Buchberger What is “empty space”?

A The van der Waals’ radius is a “one size fits all” approximation.

Q Why β-complex, not α?

A Time (this led to a debate, as elsewhere it was claimed that α was faster).Buchberger thoughts that this was really an issue of pre-processing.

Page 26: International Congress of Mathematical Software 2014

3.4 Regular Chains: Moreno Maza

A Maple library, or via www.regularchains.org. These slides etc. are alsothere.

Point of view is recursive polynomials, and a triangular set has main variablesdisjoint. See[Rit32, Wu87]. The quasi-component is W (T )−V (T )−V (hT ) andsat(T ) = 〈T 〉 : h∞T

Theorem 8 W (T ) = V(sat(T )). Moreover, if sat(T ) 6= 〈1〉, then sat(T ) isstrongly equidimensional.

Definition 6 (Kalkbrener) T is a regular chain iff T is empty or lcoeff(T )is invertible w.r.t. red(T ) and red(T ) is itself a regular chain.

Definition 7 T1, . . . , Te is a Kalkbrener triangular decomposition of V(F ) ifV(F ) =

⋃i V(sat(Ti)).

Definition 8 T1, . . . , Te is a Wu–Lazard triangular decomposition of V(F ) if. . .

Kalkbrener solving is about the “generic solution”. To allow for other cases, weneed output=lazard.

Can get sample points (possibly more than one per component). Other tools,such as ConstructibleSets, CAD and Quantifier Elimination.

3.4.1 Parameters

Definition 9 A regular chain specializes well at u ∈ Kd if T (u) is a square-freeregular chain and . . . (no polynomial vanishes, ?or drops in leading variable).

Definition 10 A CTD of (F ) is a finite partition C of the parameter space intoconstructible sets, with, above each C ∈ C, a family TC of squarefree triangularsets such that each squarefree chain T ∈ TC specialises well at any u ∈ C and“the solutions are right”.

Page 27: International Congress of Mathematical Software 2014

Chapter 4

8 August 2014

4.1 Numerical Algebraic Geometry: Theory andPractice: Sommese

States [BHSW13]: we had different views when we started Bertini than we havenow. Hence bertini has evolved, and will have a further major rewrite intoC++. An observation I made for General Motors in 1986 saved 4 hours out ofan 8-hour job.

• Systems tend to be sparse

• Therefore they have fewer solutions than one “might expect”

• users typically only want real solutions, generally only finite ones.

Homotopy continuation is our main tool:

H(x, t) = (1− t)f(x) + tg(x) (4.1)

when t = 1 means we have g (known), and t = 0 we have f (unknown).Originally we didn’t worry about path-crossing — “if we jump, so what”.

1985 3 minutes/path: numerical analysis plus topology.

1991 8 seconds/path on IBM 3081: people started using algebraic geometry.

2006 many paths/seconds, and many cores — this is a very parallel problem.

[MorganSommese1989] if the parameter space is irreducible, solving the systemat random points simplifies subsequent solves, often ×100. We solved the nine-point problem

26

Page 28: International Congress of Mathematical Software 2014

4.1.1 Positive-dimension

We want the positive-dimensional solutions f a polynomial system.

• Use the intersection of a component with generic linear space of comple-mentary dimension (note that this works over the complexes) to get awitness set

• use continuation and deformation.

• At this point path crossing becomes a fundamental challenge, since weneed to understand the origins of witness points.

• Multiple points are also a problem, as they nullify the Jacobian. Slicethe null space — [VerscheldeleykinZhao] This deals with isolated multiplepoints: what about repeated components.

Endgames [MorganWamplerSommese] — we uniformize around a solution att = 0, then use Cauchy Integral Theorem.

But there are applications (hyperbolic PDEs) where the singular solutionsare the object, rather than a distraction. Without multiprecision, singularpoints can only be computed reliably for low multiplicities. Some people think“large means infinity”. We transform infinity to a finite point, but solutions atinfinity often have high multiplicity.

Hence we need multiprecision

• To ensure the endgame

• Evaluation; p(z) = z10 − 28z9 + 1 has a root a = 27.999999999, butp(a) ≈ −2 by naıve evaluation. Clever evaluation is something we can’tdo in higher dimensions.

• In the 9-point problem, out of 1433690 paths, 1184 used higher precisionand dropped back to double, but 680 used at least 96-bit precision.

Early versions of Bertini had many hard-coded limits, which we gradually hadto remove. We’ve needed to add support for sparse linear algebra. Also need tointer-operate with computer algebra [BDH+14].

Q How do you know you’re following a good path?

A We track condition numbers.

Q–Hong Can you do this over the complexes without R2n?

A [He] is adding extra variables but staying over the reals.

Q How do you guarantee global correctness?

A Algebraic geometry guarantees continuity in the parameters.

Q–Trefethen Random numbers are a pain: we use a fixed “arbitrary” number.

A We have a seed, and it’s always printed out.

Page 29: International Congress of Mathematical Software 2014

4.2 An Introduction to Software in NumericalAlgebraic Geometry: Hauenstein

Alt’s problem — design a mechanism passing through 9 points, and there are1442 such mechanisms. Most of these are complex, and many of the real oneshave degeneracies, but we’ll ignore that for now. Bertini: how many conicsintersect 8 lines — answer 92. Can one do this over the reals?

HOM4PS-3.0 Section 4.4.

NAG4M2

Mostly interested in solutions over C.Example of solving an easy system, then moving it. The homotopy should

exploit what structure there is in the target system. Having chosen a source g,multiplies it by random γ ∈ C to “avoid singularities”.

What about positive dimension? If we have irreducible components

Algebra Ideals (prime)

Geometry witness sets. Claims that these facilitate membership testing, sam-pling, intersection, projection and real points.

How do we split components? In particular, now do we partition the wit-ness points? On an irreducible component, the smooth points are connected.[SommeseVerscheldeWampler2002]. So as we move our linear slice, these pointsshould interchange within components. In practice, random loops work well.

The centroid of the points of a connected component must move on a line ifwe take parallel hyperplanes.

Q–NT How much of this is automated?

A Bertini allows a lot of user control: choose, or write, your own homotopy.Monodromy and trace test are totally automated.

4.3 Paramotopy: software for parameter homo-topies: Bates

Can solve each of M problem separately, using P paths, total cost P ·M .

1. Solve the system for fixed (random) values of parameters P , L of whichare successful.

2. Track each successful for the M values.

Cost P + L ·M .

NB This won’t always work, so may need to redo step 1.

Page 30: International Congress of Mathematical Software 2014

Problem with standard NAG1 software, which has parallelization within runs,not between runs. Failure mitigation was not automated, and the startup costsweren’t automated.

Therefore www.paramopy.com. Written C++/Boost/ Bertini (as a subrou-tine). Very interactive. Asks what to do about failed points, for example.

Gunawardena lab observed multi-stability in biochemical systems. But Michaelis–Menton very rarely exhibits this sort of multi-stability. Whether there is multi-stability depends on the reaction rates. Running experiments to determine ratesis expensive, so let’s do homotopy instead. Reduces 13 × 13 system to 2 × 2over 8-dimensional parameter states. Brake looked at 13×13 system and found2 out of 200,000 points of multistability in parameter space. Therefore lotsof questions about the points of multistability in parameter space. Do someMonte-Carlo sampling. Then used VEGAS adaptive sampling. There seemsto be one large component (17,000 samples) and a large number of small ones(≤ 20). We can show it’s not convex.

Q What do failures tell you?

A Discriminant locus.

Q What does this 8-D space look like?

A I can tell you some properties,but I can’t describe it!

4.4 Hom4PS 3.0

Note that t = 1 is the target for me, not = 0. [HuberSturmfels1994]. assumetwo trinomials in two variables, with generic coefficients. Multiply tωi into eachmonomial. Problem with t = 0. Do a change of variables: xi = yit

αi .Efficiency? Parallelism? Scale? hows cyclic–15, with almost perfect scaling

up to 64 cores. Based on version 2,but written in C++., supports multi-precisionf.p.

Q Licence?

A None yet, I’ll be showing the team yesterday’s talk (Section ??)

4.5 Bertini Real: software for real algebraic sets

It’s compiled command-line software using Bertini. Produces a cellular de-composition of real algebraic components. Using MatLab for symbolic/visualcomputation. Can decompose higher-level objects. Suppose F : CN → Cn.

1In this context, “Numerical Algebraic Geometry”, not “Numerical Algorithms Group”.

Page 31: International Congress of Mathematical Software 2014

1. Find the critical points. Since f is one-dimensional, consider [f ,linear].Then use regeneration.

2. Intersect with sphere with (large) sphere, to determine components thatgo to infinity.

3. Slice (through critical points, and mid-slices as well).

4. Connect the dots

5. Merge (dots from above that we no longer need topologically, having con-nected components)

6. Refine to get decent-looking curves.

For a surface decomposition.

1. Find the critical curves. This is the most challenging part. End up withJacobians of parametrised versions of Jacobians [JHD couldn’t take downthe formulae].

2. Decompose singular curves

3. Intersect with sphere with (large) sphere, to determine components thatgo to infinity.

4. Slice

5. Connect the dots (track the midpoints of the midslices.

6. Refine to get decent-looking images.

How to make a 3D print:

Run Bertini

Run Bertini real

Refine

Make .stl via a MatLab tool.

Thicken firstly via MatLab, then Python’s blender

Print

Q Can you tell a collection of curves from a genuine surface?

A Good question!

Q What happens if you move to the radical zero-set?

A Discussion abut symbolic/numeric pro/con.

Q Running time? Longest step?

A Example — 20 seconds, which some is calling MatLab. Critical points ofcritical curves is by far the longest.

Page 32: International Congress of Mathematical Software 2014

4.6 Quantifier Elimination Software based on com-prehensive Grobner systems

Quantifier Elimination: ∃x ∈ R(x2 +ax+ b = 0 is a2− 4b ≥ 0. Note over C it’strue. Over C we have GCD-C-QE, Regular Chains and CGS-C-QE. Also overR. [Wei92, SS01, KSW10, Nab07], [Nabeshima2012a]. We use the last.

Variables x1, . . . , xn, parameters a1, . . . , am. Let mh be a linear map A→ Aand B a bilinear form A × A → R. Let χ)Y ) be the characteristic polynomialof N . C+ number of sign changes of χ(Y ), and C− of χ(−Y ). We introduceHybrid-C-QE.

For inequalities qi 6= 0, introduce new zi and 1−ziqi. Use [Kal97] to say G(a)is a Grobner basis when a ∈ S. This works over C. JHD:only for a conjunctionof equalities and inequations.

Over R, where we have ri > 0, we add zi and 1− z2i ri = 0, similarly for ≥.Again only for a conjunction of ground terms.

Has implemented the complex case in in RisaAsir, the real case in Maple.Claims that for

∃x, y, z(xy + axz + yz = 1) ∧ . . . ∧ . . .

no existing package terminates in a day.However, we do not have simplification over R yet.

Q–JHD Can you deal with more complex formulae.

A “step by step” (needs discussing)

Q What about using the Grobner cover?

A Discuss.

Q Suppose the ideal is not zero-dimensional?

A We transform it [Possibly making variables into parameters]

4.7 Iwane

Fujitsu: trying to solve optimisation problems. Want the output to be a feasibleregion, or true/false if all variables are quantified. We have

• General Quantifier Elimination By CAD: O(22n

. [Col75, CH91]

• Virtual Term Substitution for linear/quadratic formulae: O(2k)

• Quantifier Elimination by SH sequences.

SyNRAC — our code: Symbolic–Numeric toolbox for Real Algebraic Con-straints. It is a Maple toolbox written in Maple and C. Applications suchas parametric optimisation

Page 33: International Congress of Mathematical Software 2014

Problem 4 Minimise f(x) subject to C(x). ∃x(y = f(x) ∧ C(x)) gives thefeasible region for y.

Problem 5 Minimise f(x, θ) subject to C(x, θ). ∃x(y = f(x, θ)∧C(x, θ)) givesthe feasible region for y.

Used this for shape design of air-bearing surface of a HDD. need to make theflight height as close as possible while roll etc. are within bounds. Took 10daysto two weeks down to one day.

used dynamic evaluation (only requires square-freeness) and avoids expensivefactorisation. Also use validated numbers. By bounded CAD we can avoidneedless constructions.

[AnaiHara1999] looks at ∀x(x ≥ 0→ f(x) > 0). Note that we can computethe (parametric) SH sequence once, independent of where we’re evaluating. Ma-jor savings.

4.8 Software using the Grobner cover for ge-ometrical local computation and classifica-tion: Montes

The Singular grobcov library. Standard Dynamic Geometry Systems(DGS),such as Geogebra, aren’t able to determine the locus algebraically. . TheGrobner cover is the equivalent of a reduced Grobner basis for a parametricideal. For a fixed term order, it is a canonical object. See [Wib07, MW10]. Wealso use [KSW10].

F = {f1, . . . , fs} ⊂ Q[u][x]. We get a unique canonical partition of Cm

into locally closed sets (segments), with associated generalized reduced Grobnerbases. The P-representation of S is

Prep(S) = {{pi, {pi,j}}

where ∀j, pi ⊂ pi,j . The Bi are given by monic I-regular functions over Si.an I-regular function allows a generic and a full representation. The genericrepresentation is given by a single polynomial that specialises well . . .

4.8.1 Locus

[Abanadesetal]. We consider a tracer point P (u1, u2), whose coordinates aredeemed to be parameters, and we want the points of the parameter space wherethere are solutions.

Let π1 and π2 be the projections into variable and parameter space. Normallocus points are the points n parameter space which correspond to 1 (or a finitenumber) of solutions (u ∈ C2 : dim(π2(V(F ) . . .) = 0), whereas non-normalis those with infinitely many. Hence, given a Grobner cover, we can split thecomponents according to this.

Page 34: International Congress of Mathematical Software 2014

Example 19 (Pascal Limacon) F = {y21 + y22 = 4, (2 − y1)u1 + y1(2−2) =0, )u1 − y1)2(u2 − y2)2 = 1}.

Example 20 (Offset of a circle) Consider the locus of an offset 1 of a circleof radius 1. Note we have the outer circle, and also the accumulation point inthe centre.

Example 21 (Steiner–Lehmus) Groebner Cover identifies various multiplepoints, which are self-crossing points of the locus, which need to be “smoothedout” into the drawn locus.

Q Why Grobner cover, not Comprehensive Grobner Basis?

A It’s canonical.

4.9 Using Maple’s RegularChains Library to au-tomatically classify plane geometric loci: Botana

Application is dynamic geometry. Shows Limacon of Pascal in GeoGebra. Wepropose a taxonomy of the spaces. I use crc:=ComplexRootClassification

fromRegularChains, then

map(x->Info(x[1],R),x[2]],crc)

Note that Grobner Cover doesn’t solve the sliding ladder problem, but Regu-larChains can.

Note that GeoGebra is free, and can use Singular for free via Sage, so Reg-ularChains’s dependence on Maple is a financial problem for us in Spain.

Q-speaker Why do have superfluous conditions?

A-Moreno Maza Should be using Real. . . .

4.10 Solving Parametric Polynomial Systems viaRealComprehensiveTriangularize: Moreno Maza

As well as Info, note Display. Shows an example of looking for bistable statesof a chemical system, by asking RealComprehensiveTriangularize for theparameter space over which there are two solutions (two calls: once to build thestructure and one to extract). RealComprehensiveTriangularize provides acase discussion of the number/dimension of solutions, depending on parametervalues. To specialise well, the initials must not vanish, and remain invertible.

But in fact we want the chain to be squarefree (DSCTD), and the speciali-sation to remain squarefree. Then above each cell of a DSCTD.

• there are no solutions

Page 35: International Congress of Mathematical Software 2014

• There are a finite number of solutions, continuous functions of the param-eters.

• Infinitely many, of constant dimension.

Algorithm

1. Compute a DSCTD

2. Refine each cell into connected semi-algebraic sets via CAD

3. Count the solutions.

Example 22 (Mad Cow disease) S1 describes all equilibria

. . . describes the case of two stable equilibria

. . .

Q I don’t understand what the output is?

A The first list is a description of the cells in parameter space, the second listis a (matching) description of the solutions.

4.11 A Package for Parametric Matrix Compu-tation: Thornton

Based on RegularChains. Note that, say, rank is not a continuous function of the

parameters. Consider JCF of

α 0 10 α− 3 00 0 −2

. Both systems Maple/Mathematica

give 3 1-blocks. Sage refuses.

1. Define the polynomial system

2. Call triangularize

3. Do various set differences

Example of a previous paper,which had misquoted conditions for rank degener-acy.

4.11.1 Zigzag form

See [Sto98]. Define a Frobenius companion matrix: Let Bb be a matrix with bin (1, 1), 0 elsewhere. A Zigzag form is block diagonal apart from Bbi Then wemodify [Sto98] to split whenever ranks are not constant.

Aim to produce ParametricMatrixTools. We want to minimise unnecessarysplitting.

Q Gaussian elimination/triangular form?

A Yes, same technique as rank.

Page 36: International Congress of Mathematical Software 2014

Chapter 5

9 August 2014

5.1 Computer Discovery and Visual Theoremsin Mathematics: J. Borwein

Started to decode Ramanujan’s notebooks. Wanted to Now at Computationally-Assisted Research in Mathematics and its Applications: CARMA. This talk isan extract from a three-hour presentation.

Shows 100 billions digits of π, with two bits meaning left/right/up/down(it needed this many to get return to origin!): 108GB, hosted on a commercialservice as their first science1. Using techniques borrowed from meteorologiststo store/visualise data.

The Computer as Collaborator (alternative title of this talk)

As a collaborator, it should know something I don’t,but I should also get alongwith it.

The object of mathematical rigour is to sanction and legitimize theconquests of intuition, and there was never any other object for it:Hadamard

Also Littlewood on pictures.

5.1.1 Visual Theorems

De Morgan’s quote on [futility of] perspective drawings. See ICMI Study 19[HdV08]. Shows visualisation of matrices: Hilbert and random. Also demon-strations of values of numerical Hilbert matrix inverses, and where the errorsoccur.

My level of understanding of [CLO92] was much enhanced by running theexamples in real time (Maple) while reading it, and that was 20 years ago on alaptop. Note also PSLQ [FBA99]2.

1Also appeared in Wired UK, August 20142Ferguson also sculpted, in bronze, the Borwein award for the CMS.

35

Page 37: International Congress of Mathematical Software 2014

5.1.2 Case Studies

Proteins NMR can discover a subset of inter-atomic distances without dam-age. Throw away all distances over 6A. This becomes a low-rank Euclideandistance matrix computation. For 1PTQ, get a perfect result after 5,000steps. 1POA fits to -49dB, but looks awful: power of visualisation. Com-pares (visually) Douglas–Rachford reflection (good) with von Neumann’salternating projection. Why: AP is very good elsewhere (Hubble).

100 digit NT’s SIAM News 2002 challenge. Every (human) solver started inone of Maple, Mathematica, MatLab. One problem: maximise

I(α) =

∫ 2

0

(2 + sin(10α))xα sin

2− x

)dx

for α ∈ [0, 5]. Note that I(α) is a Meijer G-function, and Maple/Mathematicaknow this.

5.1.3 Random walks

[Pearson, nature 1905]. [Rayleigh, next issue] had a large n estimate of the radialdensity. Venn[1888] drew π (decimal digits, but 0–7 meaning N,NE,E,. . . ).

Has a visualisation of random short walks.

W2 =

∫ 1

0

∫ 1

0

∣∣e2πix + e2πiy∣∣ dxdy

which both Maple and Mathematica think is zero.

W3 has a closed form; 13 3√4+...... + ...

... . W4 in terms f G-functions.3624360069

... etc. have enormous periods [Masaglia2010].Various results on normality and nonnormality of Stoneham numbers. e.g

α2,3 is normal base 2 but not base 6. Visualisations are very powerful. Notethat the Champernowne number C10 is normal,but looks totally patterned.

5.2 Cylindrical Algebraic Decompositions in theRegularChains Library: Moreno Maza

Definition of CAD. [Col75]. New scheme via complex space (CylindricalDecompose)[CMMXY09]. Shows case discussion in the case of ∃x : ax2 + bc+ c = 0.

Note CylindricalAlgebraicDecompose(...,output=cadcell), and output=

rootof. Improvements via optimiztion=EC or TTICAD.We have now solved the Joukowski problem [DBEW12]. Uses precondition=

true and partial=true. 55 seconds and 21 seconds.

Page 38: International Congress of Mathematical Software 2014

5.3 Choosing a variable ordering for truth-tableinvariant cylindrical algebraic decompositionby incremental triangular decomposition: Dav-enport

See http://staff.bath.ac.uk/masjhd/Slides/JHD-ICMS2014-post.pdf.

Q–Hong What’s the difference between TTI and equational constraints?

A (a) more local; (b) applies even when there’s no global equation constraint.

5.4 Using RegularChains to do Projecting/LiftingCAD; England

Available from Bath, and aim to integrate into regularchains.org. Used as aresearch tool, let to TTICAD in PL, which led to TTICAD for RC. Using manyroutines from the RegularChains library.

One difficulty is that RegularChains assumes that,in addition to delineabil-ity, the polynomials separate above each cell: use Triangularize here, andRong Xiao’s adaptation of Musser’s squarefree algorithm.

Sign-Invariant CADs with Collins or McCallum

Order-Invariant

Brown’s “minimal delineating polynomials” (not actually in QEPCAD)

Equational Constraints as in [McC99], but with improved lifting as well.

Truth Table-Invariant As in [BDE+13]. Note that their applications of TTI-CAD which aren’t just truth invariance: simplification, motion-planning.See also BranchCuts in FunctionAdvisor [ECTB+13].

Layered sub-CAD either directly or incremental. In particular full-dimen-sional never involves algebraic numbers.

Variety sub-CAD Smaller output, and potential time savings.

Combinations of all the above.

Q-Moreno Maza You said you don’t need cylindricity for the branch cut ap-plication? What about RealTriangularize

A Possibly, but does that handle TTI-options

Moreno Maza Not yet: we should talk.

Page 39: International Congress of Mathematical Software 2014

5.5 Hierarchical Comprehensive Triangular De-composition: Tang

Note that Gauss triangularises a linear system. What about nonlinear? Ingeneral, will work, and a smooth change of coefficients doesn’t change things.But there are special cases. Existing CTD

1. Full solution in all variables/parameters

2. Partition parameter space into constructible sets

3. Find the TD over each (it wasn’t clear to JHD how much re-computationwas required).

So we introduce a new algorithm.

1. Compute a TD in variable space only, tracking side-conditions.

2. Add one side-condition, and its parameter as a variable.

3. repeat as necessary.

In practice this is 1.3-2 times slower on one set, but 4–5 times faster on anotherset. For hard examples, when CTD doesn’t terminate, we at least get the genericcase.

Q-Hong Can you re-use the computations from one TD to the next?

A In some examples we can.

5.6 Doing Algebraic Geometry with the RegularChains

library: Moreno Maza

Our driving application will be intersection multiplicity. Let f1, . . . , fn ∈ k[x1, . . . , xn]such that V is zero-dimensional. Want to compute the intersection multiplicityI(p; f1, . . . , fn) for p ∈ V(f1, . . . , fn). In the projective plane, this specifies theweights for Bezout’s theorem. It is not natively computable by Maple. Singularand Magma only do it for points in k.

5.6.1 Two plane curves

Definition 11 The intersection multiplicity of p in V(f, g) is

I(p, f, g) = dimk(OA2,p/〈f, g〉)

1. We set I =∞ of there’s a common factor

2. I(p; f, g) = 0 iff

Page 40: International Congress of Mathematical Software 2014

3. I(p; f, g) is invariant under affine change of coordinates

4. I(p; f, g) = I(p; g, f)

5. Multiplicative if factorisations of f and g.

Gives an algorithm for this due to Fulton, which doesn’t work in more than 2D,since k[x1, . . . , xn−1] is no longer a PID, also assumes p defined over base field.We aim to relax the second definition, and give a recursive algorithm in n.

We need the multivariate/regular chains version of the D5 principle.

Theorem 9 If 〈T 〉 is maximal, then I(p, f1, f2) is the same at any point o ∈V(T ).

New command TriangularizeWithMultiplicity. Demonstrated on an exam-ple (working modulo 101 for simplicity).

Theorem 10 Assume that hn = V(fn) is non-singular at p. Let vn be its tan-gent hyperplane. assume it meets each component transversally. Then I(p; f1, . . . , fn−1, fn) =I(p; f1, . . . , fn−1, hn), and therefore reduced to n− 1 dimensions.

Need the non-trivial limit points, via Puiseux series of regular chains.

5.7 Computing Moore-Penrose inverse: Zhang

Differential Operators can be multiplied. Hence we need Ore polynomials, withδ(a+ b) = δ(a) + δ(b) and δ(ab) = σ(a)δ(b) = δ(a)b. Maple’s Ore package.

Want to work in R[x;σ, δ]n×m of matrices over an Ore ring. Note the quater-nions H.

We can have quaternion polynomials, where x commutes with the quater-nions. A‡ is the Moore–Penrose inverse of A ∈ H[]m×n if it solves AXA =A;XAX = X, (AX)∗ = AX, (XA)∗ = XA.

Lemma 2 If A ∈ H[x]m×n, then the eigenvalues of AA∗ are real.

5.8 Multivariate Birkhoff Polynomial Interpola-tion

The orders of the derivative conditions at some nodes are discontinuous. Needthe “lower set” of a staircase.

Q-Moreno Maza Real/complex?

A Use Triangularize, and then RealRootClassification for the reals.

Page 41: International Congress of Mathematical Software 2014

5.9 An Improvement of the Rosenfeld–GrobnerAlgorithm: Hashemi

Hakim Pmar Khayyam Nieshapuri wrote Demonstration of Problems of Algebra(1070) which described how to solve the cubic, and the triangular array ofbinomial coefficients..

Aim: to bring algebraic solutions to PDEs. See [Rit50]. Define ≺lex and≺drl as orders.

Definition 12 For polynomials G is a Grobner Basis if lm(G) = lm((G)).

Define differential ring (possibly partial). Differential ideal. For θ = δm11 · · · δmm

m

write ord(θ) =∑mi. Polynomial differential ring K{u1, ldots, un}

Definition 13 > is a ranking if ∀δ ∈ Θ, ∀v, w ∈ ΘU : δv > and v > w ⇒ δv >δw.

Define leader, and separant of p = ∂p∂ leader(p).Consider two differential polynomial p1, p2 with leaders leader(pi) = θiui.

Then

δ(p1, p2) =

{sp2

θ1,2θ1

. . . ??

0 otherwise

Hence Rosenfeld–Grobner,which constructs ∆-polynomials, and reduces themdifferentially as well as algebraically w.r.t. the current set. But we need todiscuss the nullity of initials. (More like Comprehensive Grobner Basis).

See [CarraFerroOllivier1987], Mansfield’s work, [Boulier1991]. Boulier provedthis for ordinary differential rings, and we have this extension.

Theorem 11 (Generalisation of Buchberger’s gcd criterion) Suppose leader(p) =θu and leader(q) = φu and lcm(θu, φu) = θφu. Then ∆(p, q) reduces to zero.

5.10 Bertini for Macaulay2: Rodriguez

needsPackage(Bertini) is all that is needed. Shows bertiniZeroDimSolve,which also has condition numbers etc., and lots of bertini-internals. Also bertiniPosDimSolve, which gives the components of the “numerical variety”.

Also bertiniParameterHomotopy: see Section 4.3.

Q–Hong What was the hardest part?

A Interfacing all the types of numbers.

Q This was all Macaulay calling Bertini: reverse direction?

A That was the demo I didn’t get to!

Page 42: International Congress of Mathematical Software 2014

5.11 Using Monodromy to avoid high precision:Niemerg

“Consider the Latin3 definition of monodromy”: running round once. Multi-precision involves moving from hardware to software.

Define a path segment P to be a triple (p, t..., t...). Consider two containersPforward and Pbackward, with these rules.

1. Always finish Pbackward first

2. Always use the same loop after you’ve made one trip.

This gives us a heuristic process

1. Create your favourite start system and populate Pforward with the startsolutions.

2. perform normal tracking.

3. If you hit a trigger (condition number etc.) then construct an ad hocmonodromy loop.

4. Follow the rules.

But we can hit triggers as we move along a path, and forward and backwardtracking on the same path can have different size loops. JHD: seems to be “workin progress”, and there was a lot of possible directions based on a complicateddiagram.

Q Does this pay off?

A Good question. It does in our examples.

5.12 Software for MKM: Ion

MSC [Mathematics Subject Classification] and the underlying concept has along history: Leibniz, Dewey, LoC, etc. MSC 2010 exists: 5606 leaf nodes.MathSciNet indexes 3M publication, by 720K authors. This is now an RDFlinked dataset using SKOS (Subject Knowledge Organisation System) as thevocabulary. LoC uses SKOS, with 250K leaves. This allows multilingual supportwith Unicode. This has three kinds of links: “see also”, “see mainly” and “forXX see”.

There is a SPARQL interface.

3JHD did a little research, which he discussed afterwards with the speaker. The etymologyis clearly Greek, but in fact, according to the Oxford English Dictionary, the work itself wascoined by Cauchy. They quote [Cau47, p.352], which does indeed look like a coinage: “Nous lesappellerons monodromes” [original emphasis] and “le mot monodrome paraıt bien exprimerassez bien la propriete de la fonction que l’on considere, puisque celles-ce varie par degresinsensibles, en acquerant a chaque instant une valeur unique, tandis que le point mobile Acorrespondant l’affixe z court ca et la, . . . ”.

Page 43: International Congress of Mathematical Software 2014

Q–Hong What is a subject?

A Shows 11G as an example. This is a list of topics, others might have methods,or problems.

Page 44: International Congress of Mathematical Software 2014

Bibliography

[BDE+13] R.J. Bradford, J.H. Davenport, M. England, S. McCallum, andD.J. Wilson. Cylindrical Algebraic Decompositions for BooleanCombinations. In Proceedings ISSAC 2013, pages 125–132, 2013.

[BDH+14] D.J. Bates, W. Decker, J.D. Hauenstein, C. Peterson, G. Pfister,F.O. Schreyer, A.J. Sommese, and C.W. Wampler. Comparisonof probabilistic algorithms for analyzing the components of anaffine algebraic variety. Applied Mathematics and Computation,231:619–633, 2014.

[BHSW13] D.J. Bates, J.D. Hauenstein, A.J. Sommese, and C.W. Wampler.Numerically Solving Polynomial Systems with Bertini. SIAMPress, 2013.

[Cau47] A.-L. Cauchy. Exercices d’Analyse et de Physique MathematiqueIV. Bachelier, Paris, 1847.

[CH91] G.E. Collins and H. Hong. Partial Cylindrical Algebraic Decom-position for Quantifier Elimination. J. Symbolic Comp., 12:299–328, 1991.

[CLO92] D. Cox, J. Little, and D. O’Shea. Ideals, Varieties and Algo-rithms: An Introduction of Computational Algebraic Geometryand Commutative Algebra. Springer-Verlag, 1992.

[CMMXY09] C. Chen, M. Moreno Maza, B. Xia, and L. Yang. ComputingCylindrical Algebraic Decomposition via Triangular Decomposi-tion. In J. May, editor, Proceedings ISSAC 2009, pages 95–102,2009.

[Col75] G.E. Collins. Quantifier Elimination for Real Closed Fields byCylindrical Algebraic Decomposition. In Proceedings 2nd. GIConference Automata Theory & Formal Languages, pages 134–183, 1975.

[DBEW12] J.H. Davenport, R. Bradford, M. England, and D. Wilson. Pro-gram Verification in the presence of complex numbers, functions

43

Page 45: International Congress of Mathematical Software 2014

with branch cuts etc. In Proceedings SYNASC 2012, pages 83–88,2012.

[DH88] J.H. Davenport and J. Heintz. Real Quantifier Elimination isDoubly Exponential. J. Symbolic Comp., 5:29–35, 1988.

[ECTB+13] M. England, E. Cheb-Terrab, R. Bradford, J.H. Davenport, andD.J. Wilson. Branch Cuts in Maple 17. http://arxiv.org/abs/1308.6523, 2013.

[EH13] M. Eras,cu and H. Hong. The Secant-Newton Map is OptimalAmong Contracting Quadratic Maps for Square Root Computa-tion. J. Reliable Computing, 18:73–81, 2013.

[FBA99] H.R.P. Ferguson, D.H. Bailey, and S. Arno. Analysis of PSLQ, anInteger Relation Finding Algorithm. Math. Comp., 68:351–369,1999.

[Gon12] Gonthier,G. et al. The formalization of the Odd Or-der theorem has been completed on September 20th,2012. http://www.msr-inria.inria.fr/Projects/

math-components/feit-thompson, 2012.

[Hal12] T.C. Hales. Dense sphere packings: a blueprint for formal proofs.Cambridge University Press, 2012.

[HdV08] G. Hanna, , and M. de Villiers. ICMI study 19: Proof and provingin mathematics education. ZDM Mathematics Education, 40:329–336, 2008.

[Hof89] C.M. Hoffmann. The Problems of Accuracy and Robustness inGeometric Computation. IEEE Computer 3, 22:31–39, 1989.

[Kal97] M. Kalkbrener. On the stability of Grobner bases under special-izations. J. Symbolic Comp., 24:51–58, 1997.

[KSW10] D. Kapur, Y. Sun, and D. Wang. A New Algorithm for Com-puting Comprehensive Grobner Systems. In S.M. Watt, editor,Proceedings ISSAC 2010, pages 29–36, 2010.

[McC99] S. McCallum. On Projection in CAD-Based Quantifier Elimina-tion with Equational Constraints. In S. Dooley, editor, Proceed-ings ISSAC ’99, pages 145–149, 1999.

[MW10] A. Montes and M. Wibmer. Grobner bases for polynomial systemswith parameters. J. Symbolic Comp., 45:1391–1425, 2010.

[Nab07] K. Nabeshima. A speed-up of the algorithm for computing com-prehensive Grobner systems. In C.W. Brown, editor, ProceedingsISSAC 2007, pages 299–306, 2007.

Page 46: International Congress of Mathematical Software 2014

[OLBC10] F.W.J. Olver, D.W. Lozier, R.F. Boisvert, and C.W. Clark, ed-itors. NIST Handbook of Mathematical Functions. CambridgeUniversity Press, 2010.

[Rab13] F. Rabe. The MMT API: A Generic MKM System. In J. Caretteet al., editor, Proceedings CICM 2013, pages 339–343, 2013.

[Rit32] J.F. Ritt. Differential Equations from an Algebraic Standpoint.Volume 14. American Mathematical Society, 1932.

[Rit50] J.F. Ritt. Differential Algebra. Colloquium Proceedings vol.XXXIII. American Mathematical Society, 1950.

[SBB+13] V. Stodden, D.H. Bailey, J. Borwein, R.J. LeVeque, W. Rider,and W. Stein. Setting the Default to Reproducible: Re-producibility in Computational and Experimental Mathemat-ics. http://icerm.brown.edu/html/programs/topical/tw12_

5_rcem/icerm_report.pdf, 2013.

[SS01] Y. Sato and A. Suzuki. Discrete Comprehensive Grobner Bases.In B. Mourrain, editor, Proceedings ISSAC 2001, pages 292–296,2001.

[ST11] Thomas Sturm and Ashish Tiwari. Verification and synthesis us-ing real quantifier elimination. In Proceedings of the 36th interna-tional symposium on Symbolic and algebraic computation, pages329–336. ACM, 2011.

[Sto98] A. Storjohann. A O(n3) Algorithm for the Frobenius NormalForm. In O.Gloor, editor, Proceedings ISSAC ’98, pages 101–104,1998.

[Vic61] W. Vickrey. Counterspeculation, auctions, and competitive sealedtenders. The Journal of Finance, 16:8–37, 1961.

[Wei92] V. Weispfenning. Comprehensive Grobner Bases. J. SymbolicComp., 14:1–29, 1992.

[Wib07] M. Wibmer. Grobner bases for families of affine or projectiveschemes. J. Symbolic Comp., 42:803–834, 2007.

[Wu87] W.-T. Wu. A Zero Structure Theorem for Polynomial EquationsSolving. MM Research Preprints, 1:2–12, 1987.