1 (* ========================================================================== *)
2 (* FLYSPECK - BOOK FORMALIZATION *)
4 (* Chapter: Nonlinear *)
5 (* Author: Thomas C. Hales *)
7 (* ========================================================================== *)
10 File of types for nonlinear inequalities to be verified by interval arithmetic.
14 (* Application and organization tags *)
16 | Flypaper of string list
18 | Tablelp | Main_estimate
19 | Fejestoth | Strongdodec | Further
20 | Tex | Derived of string list | Deprecated
22 (* Numerical testing tags *)
24 | Cfsqp | Cfsqp_branch of int | Eps of float
25 | Penalty of float*float
27 (* Linear programming tags *)
28 | Lp | Lp_aux of string | Lpsymmetry
30 (* Interval arithmetic verification tags *)
34 | Branching | Sharp | Disallow_derivatives | Onlycheckderiv1negative
35 | Dim_red | Dim_red_backsym
36 | Quad_cluster of float
37 | Set_rad2 | Delta126min of float | Delta126max of float | Widthcutoff of float
38 | Delta135min of float | Delta135max of float
39 | Set298 (* deprecated *)
45 idv : string; (* name changed 2/16/2011 because of conflict with type_expr *)
50 type texmarker = Section | Ineqdoc | Comment;;
53 Clusterlp means they enter the GLPK calcs for the cluster
56 Marchal means they enter the non-negativity estimate for clusters
59 Tablelp means they enter the LP calcs for the A and B tables in
60 the definition of Tame h.
62 Flypaper means an inequality cited directly in the flypaper
63 text. The tags are the citation names in the book.
65 Further means that it is not part of the Flyspeck project, but
66 part of one of the extension theorems: StrongDodec, Fejes
67 Toth's contact conjecture, or Musin-Tarasov.
69 Fejestoth means that it is part of the proof of the Fejes Toth's contact conjecture,
70 but not part of the proof of the Kepler conjecture
72 Strongdodec means that it is part of the proof of the strong dodec conjecture,
73 but not part of the proof of the Kepler conjecture
75 The TeX flag means that the doc field is Tex'able code (with
76 software_guide.tex context).
79 Cfsqp means that there is cfsqp nonlinear optimization code to
80 test it by gradient descent.
82 Cfsqp_branch uses this disjunct as the objective function,
83 the others as constraints.
84 The default is disjunct 0.
86 Eps is a small epsilon that is added to numerical testing to
87 avoid answers neg. by machine eps.
89 Penalty implements a penalty method in cfsqp.
91 The floats (ub,wt) give the upper bound on the penalty term and its
94 LINEAR PROGRAMMING TAGS:
95 Lp gives an instruction to generate a MathProg inequality for the
96 GLPK program to eliminate tame hypermaps.
98 Lp_aux are use to prove the Lp inequalities, but are not themselves Lp.
100 Lpsymmetry gives an instruction to generate a second MathProg
101 inequality by symmetry. y2 <-> y3, y5 <-> y6. The domain must
102 already be symmetrical, otherwise an error results.
104 INTERVAL ARITHMETIC TAGS:
105 Derived means that it is not a primitive inequality, but rather a
106 logical consequence of others.
108 Main_estimate inequalities for TameTableD and related AD HOC
109 linear programming inequalities. These appear in the Local Fan
112 Xconvert means to use the squared variables "x1...x6" rather than
113 "y1..y6" when doing the nonlinear verification.
115 Split is an instruction to the nonlinear ineq verification to split
116 the indicated variables (at 2 h0). This is needed on piecewise differentiable
117 functions (namely, lmfun) to restrict to differentiable domains.
119 Sharp means that equality is attained.
121 Disallow_derivatives means that verification should not use first derivative
122 sign to slide to an edge of the domain.
124 Onlycheckderiv1negative means that it is not the function itself that should be
125 verified, but only the first derivative of the first conjunct should be checked to
126 be negative. This is useful in monotonicity results.
128 Dim_red means that dimension reduction can be used on a quad cluster.
130 Dim_red_backsym means that dimension reduction can be used on a
131 quad cluster. It is assumed that the function on the back simplex is taum.
132 It takes the following form x8,x9 are both extremal, if both
133 are as long as possible, then x7 is as short as possible. Also x1
134 is minimal or x5 is minimal (eliminating x6 minimal by a symmetry
135 5-6,2-3,8-9 ). The reductions also use ineq 4828966562 to assume
136 that the diagonal y4 is at most 3.01 when both x5 and x6 are extremal.
138 Quad_cluster is an ineq on a coupled pair of simplices. The float
139 is the margin value for "breaksapart".
141 Set_rad2 means the circumradius can be assumed to be exactly sqrt2.
143 Delta126min is a lower bound on delta_x x1 x2 (&2) (&2) (&2) x6
145 Delta126max is an upper bound on delta_x x1 x2 (&2) (&2) (&2) x6
147 Delta135min is a lower bound on delta_x x1 (&2) x3 (&2) x5 (&2).
149 Delta135max is an upper bound on delta_x x1 (&2) x3 (&2) x5 (&2).
151 (* Set298 is a special tag for the inequality 2986512815. *)