# BigInteger.Negate(BigInteger) Method

## Definition

Negates a specified BigInteger value.

``````public:
static System::Numerics::BigInteger Negate(System::Numerics::BigInteger value);``````
``public static System.Numerics.BigInteger Negate (System.Numerics.BigInteger value);``
``static member Negate : System.Numerics.BigInteger -> System.Numerics.BigInteger``
``Public Shared Function Negate (value As BigInteger) As BigInteger``

#### Parameters

value
BigInteger

The value to negate.

#### Returns

BigInteger

The result of the `value` parameter multiplied by negative one (-1).

## Examples

The following example illustrates three ways to negate the value of a BigInteger object.

``````BigInteger number = 12645002;

Console.WriteLine(BigInteger.Negate(number));        // Displays -12645002
Console.WriteLine(-number);                          // Displays -12645002
Console.WriteLine(number * BigInteger.MinusOne);     // Displays -12645002
``````
``````Dim number As BigInteger = 12645002

Console.WriteLine(BigInteger.Negate(number))          ' Displays -12645002
Console.WriteLine(-number)                            ' Displays -12645002
Console.WriteLine(number * BigInteger.MinusOne)       ' Displays -12645002
``````

## Remarks

Negation obtains the additive inverse of a number. The additive inverse of a number is a number that produces a value of zero when it is added to the original number.

The Negate method is implemented for languages that do not support custom operators. Its behavior is identical to negation using the unary negation operator. In addition, the Negate method is a useful substitute for the negation operator when instantiating a BigInteger variable, as shown in the following example.

``````// The statement
//    BigInteger number = -Int64.MinValue;
// produces compiler error CS0220: The operation overflows at compile time in checked mode.
// The alternative:
BigInteger number = BigInteger.Negate(Int64.MinValue);
``````
``````' The statement
'    Dim number As BigInteger = -Int64.MinValue
' produces compiler error BC30439: Constant expression not representable in type 'Long'.
' The alternative:
Dim number As BigInteger = BigInteger.Negate(Int64.MinValue)
``````