Skip to content

Commit ae95d6a

Browse files
authored
[docs] minor formatting changes (#2939)
1 parent d6db16b commit ae95d6a

3 files changed

Lines changed: 70 additions & 68 deletions

File tree

.vale.ini

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ TokenIgnores = (\$+.+?\$+)|(\]\(@(ref|id).+?\))
2222

2323
# TODO(odow): investigate
2424

25+
[docs/src/manual/standard_form.md]
26+
Vale.Spelling = OFF
27+
2528
[docs/src/submodules/Bridges/implementation.md]
2629
Vale.Spelling = OFF
2730

docs/src/manual/standard_form.md

Lines changed: 66 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -35,73 +35,72 @@ extensible to other sets recognized by the solver.
3535

3636
The function types implemented in MathOptInterface.jl are:
3737

38-
| Function | Description |
39-
| :--------------- | :---------- |
40-
| [`VariableIndex`](@ref) | ``x_j``, the projection onto a single coordinate defined by a variable index ``j``. |
41-
| [`VectorOfVariables`](@ref) | The projection onto multiple coordinates (that is, extracting a sub-vector). |
42-
| [`ScalarAffineFunction`](@ref) | ``a^T x + b``, where ``a`` is a vector and ``b`` scalar. |
43-
| [`ScalarNonlinearFunction`](@ref) | ``f(x)``, where ``f`` is a nonlinear function. |
44-
| [`VectorAffineFunction`](@ref) | ``A x + b``, where ``A`` is a matrix and ``b`` is a vector. |
45-
| [`ScalarQuadraticFunction`](@ref) | ``\frac{1}{2} x^T Q x + a^T x + b``, where ``Q`` is a symmetric matrix, ``a`` is a vector, and ``b`` is a constant. |
46-
| [`VectorQuadraticFunction`](@ref) | A vector of scalar-valued quadratic functions. |
47-
| [`VectorNonlinearFunction`](@ref) | ``f(x)``, where ``f`` is a vector-valued nonlinear function. |
38+
| Function | Description |
39+
| :-------------------------------- | :----------------------------------------------------------------------------------------------------------------- |
40+
| [`VariableIndex`](@ref) | ``x_j``, the projection onto a single coordinate defined by a variable index ``j`` |
41+
| [`ScalarAffineFunction`](@ref) | ``a^T x + b``, where ``a`` is a vector and ``b`` scalar |
42+
| [`ScalarQuadraticFunction`](@ref) | ``\frac{1}{2} x^T Q x + a^T x + b``, where ``Q`` is a symmetric matrix, ``a`` is a vector, and ``b`` is a constant |
43+
| [`ScalarNonlinearFunction`](@ref) | ``f(x)``, where ``f`` is a nonlinear function |
44+
| [`VectorOfVariables`](@ref) | The projection onto multiple coordinates (that is, extracting a sub-vector) |
45+
| [`VectorAffineFunction`](@ref) | ``A x + b``, where ``A`` is a matrix and ``b`` is a vector |
46+
| [`VectorQuadraticFunction`](@ref) | A vector of scalar-valued quadratic functions |
47+
| [`VectorNonlinearFunction`](@ref) | ``f(x)``, where ``f`` is a vector-valued nonlinear function |
4848

4949
## One-dimensional sets
5050

5151
The one-dimensional set types implemented in MathOptInterface.jl are:
5252

53-
| Set | Description |
54-
| :------------------------------------------------------------- | :------------------------------------- |
55-
| [`LessThan(u)`](@ref MathOptInterface.LessThan) | ``(-\infty, u]`` |
56-
| [`GreaterThan(l)`](@ref MathOptInterface.GreaterThan) | ``[l, \infty)`` |
57-
| [`EqualTo(v)`](@ref MathOptInterface.GreaterThan) | ``\{v\}`` |
58-
| [`Interval(l, u)`](@ref MathOptInterface.Interval) | ``[l, u]`` |
59-
| [`Integer()`](@ref MathOptInterface.Integer) | ``\mathbb{Z}`` |
60-
| [`ZeroOne()`](@ref MathOptInterface.ZeroOne) | ``\{ 0, 1 \}`` |
61-
| [`Semicontinuous(l, u)`](@ref MathOptInterface.Semicontinuous) | ``\{ 0\} \cup [l, u]`` |
62-
| [`Semiinteger(l, u)`](@ref MathOptInterface.Semiinteger) | ``\{ 0\} \cup \{l,l+1,\ldots,u-1,u\}`` |
53+
| Set | Description |
54+
| :----------------------------- | :------------------------------------- |
55+
| [`LessThan(u)`](@ref) | ``(-\infty, u]`` |
56+
| [`GreaterThan(l)`](@ref) | ``[l, \infty)`` |
57+
| [`EqualTo(v)`](@ref) | ``\{v\}`` |
58+
| [`Interval(l, u)`](@ref) | ``[l, u]`` |
59+
| [`Integer()`](@ref) | ``\mathbb{Z}`` |
60+
| [`ZeroOne()`](@ref) | ``\{ 0, 1 \}`` |
61+
| [`Semicontinuous(l, u)`](@ref) | ``\{ 0\} \cup [l, u]`` |
62+
| [`Semiinteger(l, u)`](@ref) | ``\{ 0\} \cup \{l,l+1,\ldots,u-1,u\}`` |
6363

6464
## Vector cones
6565

6666
The vector-valued set types implemented in MathOptInterface.jl are:
6767

68-
| Set | Description |
69-
| :---------------------------------------------------------------------| :---------- |
70-
| [`Reals(d)`](@ref MathOptInterface.Reals) | ``\mathbb{R}^{d}`` |
71-
| [`Zeros(d)`](@ref MathOptInterface.Zeros) | ``0^{d}`` |
72-
| [`Nonnegatives(d)`](@ref MathOptInterface.Nonnegatives) | ``\{ x \in \mathbb{R}^{d} : x \ge 0 \}`` |
73-
| [`Nonpositives(d)`](@ref MathOptInterface.Nonpositives) | ``\{ x \in \mathbb{R}^{d} : x \le 0 \}`` |
74-
| [`SecondOrderCone(d)`](@ref MathOptInterface.SecondOrderCone) | ``\{ (t,x) \in \mathbb{R}^{d} : t \ge \lVert x \rVert_2 \}`` |
75-
| [`RotatedSecondOrderCone(d)`](@ref MathOptInterface.RotatedSecondOrderCone) | ``\{ (t,u,x) \in \mathbb{R}^{d} : 2tu \ge \lVert x \rVert_2^2, t \ge 0,u \ge 0 \}`` |
76-
| [`ExponentialCone()`](@ref MathOptInterface.ExponentialCone) | ``\{ (x,y,z) \in \mathbb{R}^3 : y \exp (x/y) \le z, y > 0 \}`` |
77-
| [`DualExponentialCone()`](@ref MathOptInterface.DualExponentialCone) | ``\{ (u,v,w) \in \mathbb{R}^3 : -u \exp (v/u) \le \exp(1) w, u < 0 \}`` |
78-
| [`GeometricMeanCone(d)`](@ref MathOptInterface.GeometricMeanCone) | ``\{ (t,x) \in \mathbb{R}^{1+n} : x \ge 0, t \le \sqrt[n]{x_1 x_2 \cdots x_n} \}`` where ``n`` is ``d - 1`` |
79-
| [`PowerCone(α)`](@ref MathOptInterface.PowerCone) | ``\{ (x,y,z) \in \mathbb{R}^3 : x^{\alpha} y^{1-\alpha} \ge \|z\|, x \ge 0,y \ge 0 \}`` |
80-
| [`DualPowerCone(α)`](@ref MathOptInterface.DualPowerCone) | ``\{ (u,v,w) \in \mathbb{R}^3 : \left(\frac{u}{\alpha}\right)^{\alpha}\left(\frac{v}{1-\alpha}\right)^{1-\alpha} \ge \|w\|, u,v \ge 0 \}`` |
81-
| [`NormOneCone(d)`](@ref MathOptInterface.NormOneCone) | ``\{ (t,x) \in \mathbb{R}^{d} : t \ge \sum_i \lvert x_i \rvert \}`` |
82-
| [`NormInfinityCone(d)`](@ref MathOptInterface.NormInfinityCone) | ``\{ (t,x) \in \mathbb{R}^{d} : t \ge \max_i \lvert x_i \rvert \}`` |
83-
| [`RelativeEntropyCone(d)`](@ref MathOptInterface.RelativeEntropyCone) | ``\{ (u, v, w) \in \mathbb{R}^{d} : u \ge \sum_i w_i \log (\frac{w_i}{v_i}), v_i \ge 0, w_i \ge 0 \}`` |
84-
| [`HyperRectangle(l, u)`](@ref MathOptInterface.HyperRectangle) | ``\{x \in \bar{\mathbb{R}}^d: x_i \in [l_i, u_i] \forall i=1,\ldots,d\}`` |
85-
| [`NormCone(p, d)`](@ref MathOptInterface.NormCone) | ``\{ (t,x) \in \mathbb{R}^{d} : t \ge \left(\sum\limits_i \lvert x_i \rvert^p\right)^{\frac{1}{p}} \}`` |
86-
| [`VectorNonlinearOracle`](@ref MathOptInterface.VectorNonlinearOracle)| ``\{x \in \mathbb{R}^{dimension}: l \le f(x) \le u \}`` |
68+
| Set | Description |
69+
| :---------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------- |
70+
| [`Reals(d)`](@ref) | ``\mathbb{R}^{d}`` |
71+
| [`Zeros(d)`](@ref) | ``0^{d}`` |
72+
| [`Nonnegatives(d)`](@ref) | ``\{ x \in \mathbb{R}^{d} : x \ge 0 \}`` |
73+
| [`Nonpositives(d)`](@ref) | ``\{ x \in \mathbb{R}^{d} : x \le 0 \}`` |
74+
| [`SecondOrderCone(d)`](@ref) | ``\{ (t,x) \in \mathbb{R}^{d} : t \ge \lVert x \rVert_2 \}`` |
75+
| [`RotatedSecondOrderCone(d)`](@ref) | ``\{ (t,u,x) \in \mathbb{R}^{d} : 2tu \ge \lVert x \rVert_2^2, t \ge 0,u \ge 0 \}`` |
76+
| [`ExponentialCone()`](@ref) | ``\{ (x,y,z) \in \mathbb{R}^3 : y \exp (x/y) \le z, y > 0 \}`` |
77+
| [`DualExponentialCone()`](@ref) | ``\{ (u,v,w) \in \mathbb{R}^3 : -u \exp (v/u) \le \exp(1) w, u < 0 \}`` |
78+
| [`GeometricMeanCone(d)`](@ref) | ``\{ (t,x) \in \mathbb{R}^{1+n} : x \ge 0, t \le \sqrt[n]{x_1 x_2 \cdots x_n} \}`` where ``n`` is ``d - 1`` |
79+
| [`PowerCone(α)`](@ref) | ``\{ (x,y,z) \in \mathbb{R}^3 : x^{\alpha} y^{1-\alpha} \ge \|z\|, x \ge 0,y \ge 0 \}`` |
80+
| [`DualPowerCone(α)`](@ref) | ``\{ (u,v,w) \in \mathbb{R}^3 : \left(\frac{u}{\alpha}\right)^{\alpha}\left(\frac{v}{1-\alpha}\right)^{1-\alpha} \ge \|w\|, u,v \ge 0 \}`` |
81+
| [`NormOneCone(d)`](@ref) | ``\{ (t,x) \in \mathbb{R}^{d} : t \ge \sum_i \lvert x_i \rvert \}`` |
82+
| [`NormInfinityCone(d)`](@ref) | ``\{ (t,x) \in \mathbb{R}^{d} : t \ge \max_i \lvert x_i \rvert \}`` |
83+
| [`RelativeEntropyCone(d)`](@ref) | ``\{ (u, v, w) \in \mathbb{R}^{d} : u \ge \sum_i w_i \log (\frac{w_i}{v_i}), v_i \ge 0, w_i \ge 0 \}`` |
84+
| [`HyperRectangle(l, u)`](@ref) | ``\{ x \in \bar{\mathbb{R}}^d: x_i \in [l_i, u_i] \forall i=1,\ldots,d \}`` |
85+
| [`NormCone(p, d)`](@ref) | ``\{ (t,x) \in \mathbb{R}^{d} : t \ge \left(\sum\limits_i \lvert x_i \rvert^p\right)^{\frac{1}{p}} \}`` |
86+
| [`VectorNonlinearOracle`](@ref) | ``\{x \in \mathbb{R}^{dimension}: l \le f(x) \le u \}`` |
8787

8888
## Matrix cones
8989

9090
The matrix-valued set types implemented in MathOptInterface.jl are:
9191

92-
| Set | Description |
93-
| :--------------- | :----------- |
94-
| [`RootDetConeTriangle(d)`](@ref MathOptInterface.RootDetConeTriangle) | ``\{ (t,X) \in \mathbb{R}^{1+d(1+d)/2} : t \le \det(X)^{1/d}, X \mbox{ is the upper triangle of a PSD matrix} \}`` |
95-
| [`RootDetConeSquare(d)`](@ref MathOptInterface.RootDetConeSquare) | ``\{ (t,X) \in \mathbb{R}^{1+d^2} : t \le \det(X)^{1/d}, X \mbox{ is a PSD matrix} \}`` |
96-
| [`PositiveSemidefiniteConeTriangle(d)`](@ref MathOptInterface.PositiveSemidefiniteConeTriangle) | ``\{ X \in \mathbb{R}^{d(d+1)/2} : X \mbox{ is the upper triangle of a PSD matrix} \}`` |
97-
| [`PositiveSemidefiniteConeSquare(d)`](@ref MathOptInterface.PositiveSemidefiniteConeSquare) | ``\{ X \in \mathbb{R}^{d^2} : X \mbox{ is a PSD matrix} \}`` |
98-
| [`LogDetConeTriangle(d)`](@ref MathOptInterface.LogDetConeTriangle) | ``\{ (t,u,X) \in \mathbb{R}^{2+d(1+d)/2} : t \le u\log(\det(X/u)), X \mbox{ is the upper triangle of a PSD matrix}, u > 0 \}`` |
99-
| [`LogDetConeSquare(d)`](@ref MathOptInterface.LogDetConeSquare) | ``\{ (t,u,X) \in \mathbb{R}^{2+d^2} : t \le u \log(\det(X/u)), X \mbox{ is a PSD matrix}, u > 0 \}`` |
100-
| [`NormSpectralCone(r, c)`](@ref MathOptInterface.NormSpectralCone) | ``\{ (t, X) \in \mathbb{R}^{1 + r \times c} : t \ge \sigma_1(X), X \mbox{ is a } r\times c\mbox{ matrix} \}``
101-
| [`NormNuclearCone(r, c)`](@ref MathOptInterface.NormNuclearCone) | ``\{ (t, X) \in \mathbb{R}^{1 + r \times c} : t \ge \sum_i \sigma_i(X), X \mbox{ is a } r\times c\mbox{ matrix} \}`` |
102-
| [`HermitianPositiveSemidefiniteConeTriangle(d)`](@ref MathOptInterface.HermitianPositiveSemidefiniteConeTriangle) | The cone of Hermitian positive semidefinite matrices, with
103-
`side_dimension` rows and columns. |
104-
| [`Scaled(S)`](@ref MathOptInterface.Scaled) | The set `S` scaled so that [`Utilities.set_dot`](@ref MathOptInterface.Utilities.set_dot) corresponds to `LinearAlgebra.dot` |
92+
| Set | Description |
93+
| :-------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------ |
94+
| [`RootDetConeTriangle(d)`](@ref) | ``\{ (t,X) \in \mathbb{R}^{1+d(1+d)/2} : t \le \det(X)^{1/d}, X \mbox{ is the upper triangle of a PSD matrix} \}`` |
95+
| [`RootDetConeSquare(d)`](@ref) | ``\{ (t,X) \in \mathbb{R}^{1+d^2} : t \le \det(X)^{1/d}, X \mbox{ is a PSD matrix} \}`` |
96+
| [`PositiveSemidefiniteConeTriangle(d)`](@ref) | ``\{ X \in \mathbb{R}^{d(d+1)/2} : X \mbox{ is the upper triangle of a PSD matrix} \}`` |
97+
| [`PositiveSemidefiniteConeSquare(d)`](@ref) | ``\{ X \in \mathbb{R}^{d^2} : X \mbox{ is a PSD matrix} \}`` |
98+
| [`LogDetConeTriangle(d)`](@ref) | ``\{ (t,u,X) \in \mathbb{R}^{2+d(1+d)/2} : t \le u\log(\det(X/u)), X \mbox{ is the upper triangle of a PSD matrix}, u > 0 \}`` |
99+
| [`LogDetConeSquare(d)`](@ref) | ``\{ (t,u,X) \in \mathbb{R}^{2+d^2} : t \le u \log(\det(X/u)), X \mbox{ is a PSD matrix}, u > 0 \}`` |
100+
| [`NormSpectralCone(r, c)`](@ref) | ``\{ (t, X) \in \mathbb{R}^{1 + r \times c} : t \ge \sigma_1(X), X \mbox{ is a } r\times c\mbox{ matrix} \}`` |
101+
| [`NormNuclearCone(r, c)`](@ref) | ``\{ (t, X) \in \mathbb{R}^{1 + r \times c} : t \ge \sum_i \sigma_i(X), X \mbox{ is a } r\times c\mbox{ matrix} \}`` |
102+
| [`HermitianPositiveSemidefiniteConeTriangle(d)`](@ref) | The cone of Hermitian positive semidefinite matrices, with `side_dimension` rows and columns. |
103+
| [`Scaled(S)`](@ref) | The set `S` scaled so that [`Utilities.set_dot`](@ref) corresponds to `LinearAlgebra.dot` |
105104

106105
Some of these cones can take two forms: `XXXConeTriangle` and `XXXConeSquare`.
107106

@@ -127,19 +126,19 @@ or solver developers.
127126
Other sets are vector-valued, with a particular combinatorial structure. Read
128127
their docstrings for more information on how to interpret them.
129128

130-
| Set | Description |
131-
| :------------------------- | :---------- |
132-
| [`SOS1`](@ref) | A Special Ordered Set (SOS) of Type I |
133-
| [`SOS2`](@ref) | A Special Ordered Set (SOS) of Type II |
134-
| [`Indicator`](@ref) | A set to specify an indicator constraint |
129+
| Set | Description |
130+
| :------------------------- | :-------------------------------------------------- |
131+
| [`SOS1`](@ref) | A Special Ordered Set (SOS) of Type I |
132+
| [`SOS2`](@ref) | A Special Ordered Set (SOS) of Type II |
133+
| [`Indicator`](@ref) | A set to specify an indicator constraint |
135134
| [`Complements`](@ref) | A set to specify a mixed complementarity constraint |
136-
| [`AllDifferent`](@ref) | The `all_different` global constraint |
137-
| [`BinPacking`](@ref) | The `bin_packing` global constraint |
138-
| [`Circuit`](@ref) | The `circuit` global constraint |
139-
| [`CountAtLeast`](@ref) | The `at_least` global constraint |
140-
| [`CountBelongs`](@ref) | The `nvalue` global constraint |
141-
| [`CountDistinct`](@ref) | The `distinct` global constraint |
142-
| [`CountGreaterThan`](@ref) | The `count_gt` global constraint |
143-
| [`Cumulative`](@ref) | The `cumulative` global constraint |
144-
| [`Path`](@ref) | The `path` global constraint |
145-
| [`Table`](@ref) | The `table` global constraint |
135+
| [`AllDifferent`](@ref) | The `all_different` global constraint |
136+
| [`BinPacking`](@ref) | The `bin_packing` global constraint |
137+
| [`Circuit`](@ref) | The `circuit` global constraint |
138+
| [`CountAtLeast`](@ref) | The `at_least` global constraint |
139+
| [`CountBelongs`](@ref) | The `nvalue` global constraint |
140+
| [`CountDistinct`](@ref) | The `distinct` global constraint |
141+
| [`CountGreaterThan`](@ref) | The `count_gt` global constraint |
142+
| [`Cumulative`](@ref) | The `cumulative` global constraint |
143+
| [`Path`](@ref) | The `path` global constraint |
144+
| [`Table`](@ref) | The `table` global constraint |

docs/src/submodules/FileFormats/overview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -229,7 +229,7 @@ julia> model = MOI.FileFormats.Model(;
229229

230230
## Validating MOF files
231231

232-
MathOptFormat files are governed by a schema. Use [JSONSchema.jl](https://github.com/fredo-dedup/JSONSchema.jl)
232+
MathOptFormat files are governed by a schema. Use [JSONSchema.jl](https://github.com/JuliaIO/JSONSchema.jl)
233233
to check if a `.mof.json` file satisfies the schema.
234234

235235
First, construct the schema object as follows:

0 commit comments

Comments
 (0)