VectorLessEqual

xy or VectorLessEqual[{x,y}]

yields True for vectors of length n if xiyi for all components .

xκy or VectorLessEqual[{x,y},κ]

yields True for x and y if y-xκ, where κ is a proper convex cone.

Details

  • VectorLessEqual gives a partial ordering of vectors, matrices and arrays that is compatible with vector space operations, so that and imply for all .
  • VectorLessEqual is typically used to specify vector inequalities for constrained optimization, inequality solving and integration. It is also used to define minimal elements in vector optimization.
  • When x and y are -vectors, xy is equivalent to . That is, each part of x is less than or equal to 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 less than or equal to 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 xiy for all components .
  • By using the character , entered as v<= or \[VectorLessEqual], with subscripts vector inequalities can be entered as follows:
  • xyVectorLessEqual[{x,y}]the standard vector inequality
    x_(kappa)yVectorLessEqual[{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] such that
    {"NormCone", n}TemplateBox[{n}, NormConeList] such that Norm[{x1,,xn-1}]xn
    "ExponentialCone"TemplateBox[{}, ExponentialConeString] such that
    "DualExponentialCone"TemplateBox[{}, DualExponentialConeString] such that or
    {"PowerCone",α}TemplateBox[{alpha}, PowerConeList] such that
    {"DualPowerCone",α}TemplateBox[{alpha}, DualPowerConeList] such that
  • Possible cone specifications κ in for matrices x include:
  • "NonNegativeCone"TemplateBox[{}, NonNegativeConeString] such that
    {"SemidefiniteCone", n}TemplateBox[{n}, SemidefiniteConeList]symmetric positive semidefinite matrices
  • Possible cone specifications κ in for arrays x include:
  • "NonNegativeCone"TemplateBox[{}, NonNegativeConeString] such that
  • For exact numeric quantities, VectorLessEqual internally uses numerical approximations to establish numerical ordering. This process can be affected by the setting of the global variable $MaxExtraPrecision.

Examples

open allclose all

Basic Examples  (3)

xy yields True when xiyi is True for all i=1,,n:

xy yields False when xi>yi is False for any i=1,,n:

Represent a vector inequality:

When v is replaced by numerical vector space elements, the inequality gives True or False:

The cone is also given by :

The cone is also given by :

The cuboid is also given by :

Scope  (7)

Determine if all of the elements in a vector are non-negative:

Determine if all components are less than or equal to 1:

!xy does not imply xy:

For each component, !xiyi does imply xi>yi:

Compare the components of two matrices:

Compare symmetric matrices:

Represent the condition that Norm[{x,y}]<=1:

Represent the condition that :

Show where for non-negative x,y with α between 0 and 1:

Applications  (8)

Basic Applications  (1)

VectorLessEqual is a fast way to compare many elements:

Optimization over Vector Inequalities  (1)

Solving Vector Inequalities  (1)

The inequality represents the cuboid Cuboid[pmin,pmax]:

Integration over Vector Inequality Regions  (2)

Integrate over the non-negative quadrant :

Using vector variables:

Integrate over the non-negative orthant:

Integrate over the rectangle :

Using vector variables:

Integrate over the cuboid :

Matrix Inequalities  (3)

Use the standard vector order to represent the set of non-negative matrices:

Give the set of interval bounded matrices:

Use the semidefinite cone to define the set of symmetric positive semidefinite matrices:

Define the set of symmetric matrices with smallest eigenvalue and largest eigenvalue by using , where n=IdentityMatrix[n] and κ="SemidefiniteCone". This finds the set of symmetric matrices with eigenvalues between 1 and 2, i.e. :

Formulate the same problem using matrix variables:

Find an instance of such a matrix:

Check the result:

Properties & Relations  (3)

VectorLessEqual is compatible with a vector space operation:

Adding vectors to both sides for any vector :

Multiplying by positive constants for any :

xy is a (non-strict) partial order, i.e. reflexive, antisymmetric and transitive:

Reflexive, i.e. for all elements :

Antisymmetric, i.e. if and then :

Transitive, i.e. if and then :

xκy are partial orders but not total orders, so there are incomparable elements:

Neither nor is true, because and are incomparable elements:

The set of vectors and . These are the comparable elements to :

Possible Issues  (1)

Vector orders are partial orders, so the negation of is not equivalent to :

Here both and are false:

Visualize and . The difference of these sets consists of incomparable elements:

Wolfram Research (2019), VectorLessEqual, Wolfram Language function, https://reference.wolfram.com/language/ref/VectorLessEqual.html.

Text

Wolfram Research (2019), VectorLessEqual, Wolfram Language function, https://reference.wolfram.com/language/ref/VectorLessEqual.html.

CMS

Wolfram Language. 2019. "VectorLessEqual." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/VectorLessEqual.html.

APA

Wolfram Language. (2019). VectorLessEqual. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/VectorLessEqual.html

BibTeX

@misc{reference.wolfram_2023_vectorlessequal, author="Wolfram Research", title="{VectorLessEqual}", year="2019", howpublished="\url{https://reference.wolfram.com/language/ref/VectorLessEqual.html}", note=[Accessed: 19-March-2024 ]}

BibLaTeX

@online{reference.wolfram_2023_vectorlessequal, organization={Wolfram Research}, title={VectorLessEqual}, year={2019}, url={https://reference.wolfram.com/language/ref/VectorLessEqual.html}, note=[Accessed: 19-March-2024 ]}