Unary operation
This article needs additional citations for verification. (March 2010) |
In mathematics, a unary operation is an operation with only one operand, i.e. a single input.[1] This is in contrast to binary operations, which use two operands.[2] An example is any function , where A is a set; the function is a unary operation on A.
Common notations are prefix notation (e.g. ¬, −), postfix notation (e.g. factorial n!), functional notation (e.g. sin x or sin(x)), and superscripts (e.g. transpose AT). Other notations exist as well, for example, in the case of the square root, a horizontal bar extending the square root sign over the argument can indicate the extent of the argument.
Examples
[edit | edit source]Absolute value
[edit | edit source]Obtaining the absolute value of a number is a unary operation. This function is defined as where is the absolute value of .
Negation
[edit | edit source]Negation is used to find the negative value of a single number. Here are some examples:
Factorial
[edit | edit source]For any positive integer n, the product of the integers less than or equal to n is a unary operation called factorial. In the context of complex numbers, the gamma function is a unary operation extension of factorial.
Trigonometry
[edit | edit source]In trigonometry, the trigonometric functions, such as , , and , can be seen as unary operations. This is because it is possible to provide only one term as input for these functions and retrieve a result. By contrast, binary operations, such as addition, require two different terms to compute a result.
Examples from programming languages
[edit | edit source]Below is a table summarizing common unary operators along with their symbols, description, and examples:[3]
| Operator | Symbol | Description | Example |
|---|---|---|---|
| Increment | ++ |
Increases the value of a variable by 1 | x = 2; ++x; // x is now 3
|
| Decrement | -- |
Decreases the value of a variable by 1 | y = 10; --y; // y is now 9
|
| Unary Plus | + |
Indicates a positive value | a = -5; b = +a; // b is -5
|
| Unary Minus | - |
Indicates a negative value | c = 4; d = -c; // d is -4
|
| Logical NOT | ! |
Negates the truth value of a Boolean expression | flag = true; result = !flag; // result is false
|
| Bitwise NOT | ~ |
Bitwise negation, flips the bits of an integer | num = 5; result = ~num; // result is -6
|
JavaScript
[edit | edit source]In JavaScript, these operators are unary:[4]
- Increment:
++x,x++ - Decrement:
--x,x-- - Positive:
+x - Negative:
-x - Ones' complement:
~x - Logical negation:
!x
C family of languages
[edit | edit source]In the C family of languages, the following operators are unary:[5][6]
- Increment:
++x,x++ - Decrement:
--x,x-- - Address:
&x - Indirection:
*x - Positive:
+x - Negative:
-x - Ones' complement:
~x - Logical negation:
!x - Sizeof:
sizeof x, sizeof(type-name) - Cast:
(type-name) cast-expression
Unix shell (Bash)
[edit | edit source]In the Unix shell (Bash/Bourne Shell), e.g., the following operators are unary:[7][8]
- Pre and Post-Increment:
++$x,$x++ - Pre and Post-Decrement:
--$x,$x-- - Positive:
+$x - Negative:
-$x - Logical negation:
!$x - Simple expansion:
$x - Complex expansion:
${#x}
PowerShell
[edit | edit source]In the PowerShell, the following operators are unary:[9]
- Increment:
++$x,$x++ - Decrement:
--$x,$x-- - Positive:
+$x - Negative:
-$x - Logical negation:
!$x - Invoke in current scope:
.$x - Invoke in new scope:
&$x - Cast:
[type-name] cast-expression - Cast:
+$x - Array:
,$array
See also
[edit | edit source]- Unary function
- Binary operation
- Iterated binary operation
- Binary function
- Ternary operation
- Arity
- Operation (mathematics)
- Operator (programming)
References
[edit | edit source]- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
External links
[edit | edit source]- Error creating thumbnail: File missing Media related to Lua error in Module:Commons_link at line 62: attempt to index field 'wikibase' (a nil value). at Wikimedia Commons