# - -- a unary or binary operator, usually used for negation or subtraction

## Synopsis

• Usage:
-y
x-y

## Description

In most cases, this operator refers to standard negation or subtraction.

In many cases, the integer 1 can be used as the identity, and scalars function as multiples of the identity. For example, the 1 below refers to the identity matrix and the 2 to twice the identity matrix.
 i1 : M = matrix{{1,2,3},{2,3,4},{3,4,6}} o1 = | 1 2 3 | | 2 3 4 | | 3 4 6 | 3 3 o1 : Matrix ZZ <-- ZZ i2 : M-1, M-2 o2 = (| 0 2 3 |, | -1 2 3 |) | 2 2 4 | | 2 1 4 | | 3 4 5 | | 3 4 4 | o2 : Sequence

### Intervals

If one of the inputs is an RRi, the output is an interval containing all differences of pairs in the inputs.

 i3 : 2-interval(1,3) o3 = [-1,1] o3 : RRi (of precision 53) i4 : interval(1,3)-interval(-1,2) o4 = [-1,4] o4 : RRi (of precision 53) i5 : interval(-1,1)-interval(-1,1) o5 = [-2,2] o5 : RRi (of precision 53)

## Ways to use symbol - :

• - CC
• - ChainComplexMap
• - Constant
• - Holder
• - InfiniteNumber
• - Matrix
• - Minus
• - MutableMatrix
• - ProjectiveHilbertPolynomial
• - QQ
• - RingElement
• - RR
• - RRi
• - ZeroExpression
• - ZZ
• CC - CC
• CC - QQ
• CC - RR
• CC - ZZ
• ChainComplexMap - ChainComplexMap
• ChainComplexMap - RingElement
• Constant - Constant
• Constant - InexactNumber
• Constant - Number
• InexactNumber - Constant
• InfiniteNumber - InfiniteNumber
• InfiniteNumber - Number
• Matrix - Matrix
• Matrix - Number
• Matrix - RingElement
• MutableMatrix - MutableMatrix
• Number - Constant
• Number - InfiniteNumber
• Number - Matrix
• ProjectiveHilbertPolynomial - ProjectiveHilbertPolynomial
• ProjectiveHilbertPolynomial - ZZ
• QQ - CC
• QQ - QQ
• QQ - RR
• QQ - RRi
• QQ - ZZ
• RingElement - ChainComplexMap
• RingElement - Matrix
• RingElement - RingElement
• RR - CC
• RR - QQ
• RR - RR
• RR - RRi
• RR - ZZ
• RRi - QQ
• RRi - RR
• RRi - RRi
• RRi - ZZ
• Vector - Vector
• ZZ - CC
• ZZ - ProjectiveHilbertPolynomial
• ZZ - QQ
• ZZ - RR
• ZZ - RRi
• ZZ - ZZ
• - List -- negation of a vector
• - SheafMap (missing documentation)
• - Tally (missing documentation)
• - Vector -- negation of a Vector
• - VirtualTally -- negation of a VirtualTally
• CC - InfiniteNumber (missing documentation)
• Constant - RingElement -- see Constant
• RingElement - Constant -- see Constant
• Constant - InfiniteNumber (missing documentation)
• - Expression -- see Expression -- the class of all expressions
• Expression - Expression -- see Expression -- the class of all expressions
• Expression - Holder -- see Expression -- the class of all expressions
• Expression - Thing -- see Expression -- the class of all expressions
• Holder - Expression -- see Expression -- the class of all expressions
• Holder - Holder -- see Expression -- the class of all expressions
• Thing - Expression -- see Expression -- the class of all expressions
• InexactNumber - RingElement (missing documentation)
• InfiniteNumber - CC (missing documentation)
• InfiniteNumber - Constant (missing documentation)
• List - List -- difference of two vectors
• MonomialIdeal - MonomialIdeal -- monomial ideal difference
• RingElement - InexactNumber (missing documentation)
• List - Set -- see Set - Set -- set difference
• Set - List -- see Set - Set -- set difference
• Set - Set -- set difference
• Tally - Tally -- difference of tallies
• VirtualTally - VirtualTally -- see VirtualTally

## For the programmer

The object - is .

This operator may be used as a binary operator in an expression like x-y. The user may install binary methods for handling such expressions with code such as

         X - Y := (x,y) -> ...

where X is the class of x and Y is the class of y.

This operator may be used as a prefix unary operator in an expression like -y. The user may install a method for handling such expressions with code such as

           - Y := (y) -> ...

where Y is the class of y.