In mathematics, a **binary operation**, or **binary operator**, is a calculation involving two input quantities and one kind of a specific operation. It is sometimes called a **dyadic operation** as well.

More precisely, a binary operation on a set *S* is a binary function from *S* and *S* to *S*, in other words a function *f* from the Cartesian product *S* × *S* to *S*.
Sometimes, especially in computer science, the term is used for any binary function. That *f* takes values in the same set *S* that provides its arguments is the property of *closure*.

Binary operations are the keystone of algebraic structures studied in abstract algebra: they form part of groups, monoids, semigroups, ringss, and more.
Most generally, a *magma* is a set together with any binary operation defined on it.

Many binary operations of interest are commutative or associative. Many also have identity elements and inverse elements. Typical examples of binary operations are the addition and multiplication of numbers and matrices as well as composition of functions on a single set.

Binary operations are often written using infix notation such as *a* * *b*, *a* + *b*, or *a* · *b* rather than by functional notation of the form *f*(*a*,*b*).
Sometimes they are even written just by juxtaposition: *a**b*.
They can also be expressed using prefix or postfix notations. A prefix notation, Polish notation, dispenses with parentheses; it is probably more often encountered now in its postfix form, Reverse Polish Notation.

An example of an external binary operation is scalar multiplication in linear algebra.
Here *K* is a field and *S* is a vector space over that field.

An external binary operation may alternatively be viewed as an action; *K* is acting on *S*.