xy or VectorGreater[{x,y}]
yields True for vectors of length n if xi>yi for all components
.
xκy or VectorGreater[{x,y},κ]
yields True for x and y if
, where κ is a proper convex cone.
VectorGreater 
xy or VectorGreater[{x,y}]
yields True for vectors of length n if xi>yi for all components
.
xκy or VectorGreater[{x,y},κ]
yields True for x and y if
, where κ is a proper convex cone.
Details
- VectorGreater gives a partial ordering of vectors, matrices and arrays that is compatible with vector space operations, so that
and
imply
for all
. - VectorGreater is typically used to specify vector inequalities for constrained optimization, inequality solving and integration.
- When x and y are
-vectors, xy is equivalent to
. That is, each part of x is greater than the corresponding part of y for the relation to be true. - When x and y are dimension
arrays, xy is equivalent to
. That is, each part of x is greater than the corresponding part of y for the relation to be true. - xy remains unevaluated if x or y has non-numeric elements; typically gives True or False otherwise.
- When x is an n-vector and y is a numeric scalar, xy yields True if xi>y for all components
. - By using the character , entered as
v>
or \[VectorGreater], with subscripts vector inequalities can be entered as follows: -

VectorGreater[{x,y}] the standard vector inequality 
VectorGreater[{x,y},κ] vector inequality defined by a cone κ - In general, one can use a proper convex cone κ to specify a vector inequality. The set
is the same as κ. - Possible cone specifications κ in
for vectors x include: -
{"NonNegativeCone", n} ![TemplateBox[{n}, NonNegativeConeList] TemplateBox[{n}, NonNegativeConeList]](Files/VectorGreater.en/22.png)
such that 
{"NormCone", n} ![TemplateBox[{n}, NormConeList] TemplateBox[{n}, NormConeList]](Files/VectorGreater.en/25.png)
such that Norm[{x1,…,xn-1}]<xn"ExponentialCone" ![TemplateBox[{}, ExponentialConeString] TemplateBox[{}, ExponentialConeString]](Files/VectorGreater.en/27.png)
such that 
"DualExponentialCone" ![TemplateBox[{}, DualExponentialConeString] TemplateBox[{}, DualExponentialConeString]](Files/VectorGreater.en/30.png)
such that 
{"PowerCone",α} ![TemplateBox[{alpha}, PowerConeList] TemplateBox[{alpha}, PowerConeList]](Files/VectorGreater.en/33.png)
such that 
{"DualPowerCone",α} ![TemplateBox[{alpha}, DualPowerConeList] TemplateBox[{alpha}, DualPowerConeList]](Files/VectorGreater.en/36.png)
such that 
- Possible cone specifications κ in
for matrices x include: -
"NonNegativeCone" ![TemplateBox[{}, NonNegativeConeString] TemplateBox[{}, NonNegativeConeString]](Files/VectorGreater.en/40.png)
such that 
{"SemidefiniteCone", n} ![TemplateBox[{n}, SemidefiniteConeList] TemplateBox[{n}, SemidefiniteConeList]](Files/VectorGreater.en/43.png)
symmetric positive definite matrices 
- Possible cone specifications κ in
for arrays x include: -
"NonNegativeCone" ![TemplateBox[{}, NonNegativeConeString] TemplateBox[{}, NonNegativeConeString]](Files/VectorGreater.en/46.png)
such that 
- For exact numeric quantities, VectorGreater internally uses numerical approximations to establish numerical ordering. This process can be affected by the setting of the global variable $MaxExtraPrecision.
Examples
open all close allBasic Examples (3)
xy yields True when xi > yi is True for all i=1,…,n:
{1, 2, 3}{0, -1, 2}xy yields False when xi ≤ yi for any i=1,…,n:
{1, 2, 3}{1, 2, 2}Represent a vector inequality:
vi = {1, 2, 3}vWhen v is replaced by numerical vector space elements, the inequality gives True or False:
vi /. v -> 0vi /. v -> {1, -1, 2}RegionPlot[{Subscript[x, 1], Subscript[x, 2]}{-2, -3}, ...]RegionPlot[{3, 2}{Subscript[x, 1], Subscript[x, 2]}, ...]RegionPlot[{3, 2}{Subscript[x, 1], Subscript[x, 2]}{-2, -3}, ...]Scope (7)
Determine if all of the elements in a vector are non-negative:
v = RandomReal[1, 10];v0Determine if all components are less than or equal to 1:
1vx = {1, 0};
y = {0, 1};!xyxyFor each component, !xi≥yi does imply xi<yi:
TableForm[{Not /@ Thread[x > y], Thread[x ≤ y]}, TableHeadings -> {{HoldForm[!Subscript[x, i] > Subscript[y, i]], HoldForm[Subscript[x, i] ≤ Subscript[y, i]]}, {1, 2}}]Compare the components of two matrices:
m1 = RandomReal[{.99, 2}, {4, 4}];
m2 = RandomReal[{0, 1.01}, {4, 4}];m1m2x = IdentityMatrix[3];y = DiagonalMatrix[{-1, 0, 1 / 2}]; z = Dot[#, Transpose[#]]&[RandomReal[1, {3, 3}]];xSubscript[, {"SemidefiniteCone", 3}]yPositiveDefiniteMatrixQ[x - y]xSubscript[, {"SemidefiniteCone", 3}]zPositiveDefiniteMatrixQ[x - z]Represent the condition that Norm[{x,y}]<=1:
{x, y, 1}Subscript[, {"NormCone", 3}]0% /. {x -> .5, y -> .6}Represent the condition that
:
{x, 1, z}Subscript[, "ExponentialCone"]0% /. {x -> 1, z -> 3}Show the boundary of where
for non-negative x,y with α between 0 and 1:
Manipulate[RegionPlot3D[{x, y, z}Subscript[, {"PowerCone", α}]0, {x, 0, 2}, {y, 0, 2}, {z, -2, 2}], {{α, .5}, 0.01, .99}]Applications (1)
VectorGreater is a fast way to compare many elements:
v1 = RandomReal[{1, 0}, 10 ^ 7];
v2 = RandomReal[{-1, 0}, 10 ^ 7];AbsoluteTiming[v1v2]AbsoluteTiming[AllTrue[v1 - v2, Positive]]Properties & Relations (3)
VectorGreater is compatible with a vector space operation:
{a, b} = {{2, 3}, {1, 1}};Adding vectors to both sides of
for any vector
:
c = {2, 1};{ab, a + cb + c}Resolve[ForAll[{a, b, c}, (a | b | c)∈Vectors[2, ℝ], aba + cb + c]]Multiplying by positive constants
for any
:
α = 1 / 2;{ab, α aα b}Resolve[ForAll[{a, b, α}, (a | b)∈Vectors[2, ℝ]∧α∈PositiveReals, abα aα b], ℝ]xκy are (strict) partial orders, i.e. irreflexive, asymmetric and transitive:
{a, b, c} = {{2, 3}, {1, 2}, {0, 0}};Irreflexive, i.e.
for all elements
so no element is related to itself:
aaResolve[ForAll[a, a∈Vectors[2, ℝ], ¬aa], Reals]{ab, Not[ba]}Resolve[ForAll[{a, b}, (a | b)∈Vectors[2, ℝ], ab¬ba], Reals]Transitive, i.e. if
and
then
:
{ab, bc, ac}Resolve[ForAll[{a, b, c}, (a | b | c)∈Vectors[2, ℝ], ab∧bcac], Reals]xκy are partial orders but not total orders, so there are incomparable elements:
{a, b} = {{2, 0}, {1, 1}};Neither
nor
is true, because
and
are incomparable elements:
{ab, ba}The set of vectors
and
. These are the only comparable elements to
:
RegionPlot[{{0, 0}{Subscript[x, 1], Subscript[x, 2]}, {Subscript[x, 1], Subscript[x, 2]}{0, 0}}, ...]Related Guides
History
Text
Wolfram Research (2019), VectorGreater, Wolfram Language function, https://reference.wolfram.com/language/ref/VectorGreater.html.
CMS
Wolfram Language. 2019. "VectorGreater." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/VectorGreater.html.
APA
Wolfram Language. (2019). VectorGreater. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/VectorGreater.html
BibTeX
@misc{reference.wolfram_2026_vectorgreater, author="Wolfram Research", title="{VectorGreater}", year="2019", howpublished="\url{https://reference.wolfram.com/language/ref/VectorGreater.html}", note=[Accessed: 13-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_vectorgreater, organization={Wolfram Research}, title={VectorGreater}, year={2019}, url={https://reference.wolfram.com/language/ref/VectorGreater.html}, note=[Accessed: 13-June-2026]}