In the Euclidean plane with points a, b, c referred to an origin, the ternary operation has been used to define free vectors. Since (abc) = d implies a – b = c – d, these directed segments are equipollent and are associated with the same free vector. Any three points in the plane a, b, c thus determine a parallelogram with d at the fourth vertex.
In projective geometry, the process of finding a projective harmonic conjugate is a ternary operation on three points. In the diagram, points A, B and P determine point V, the harmonic conjugate of P with respect to A and B. Point R and the line through P can be selected arbitrarily, determining C and D. Drawing AC and BD produces the intersection Q, and RQ then yields V.
Suppose A and B are given sets and is the collection of binary relations between A and B. Composition of relations is always defined when A = B, but otherwise a ternary composition can be defined by is the converse relation of q. Properties of this ternary relation have been used to set the axioms for a heap.
In Boolean algebra, defines the formula .
In computer science, a ternary operator is an operator that takes three arguments (or operands). The arguments and result can be of different types. Many programming languages that use C-like syntax feature a ternary operator,
?:, which defines a conditional expression. In some languages, this operator is referred to as the conditional operator.
In Python, the ternary conditional operator reads
x if C else y. Python also supports ternary operations called array slicing, e.g.
a[b:c] return an array where the first element is
a[b] and last element is
a[c-1]. OCaml expressions provide ternary operations against records, arrays, and strings:
a.[b]<-c would mean the string
a where index
b has value
The multiply–accumulate operation is another ternary operator.
Another example of a ternary operator is between, as used in SQL.
The Icon programming language has a "to-by" ternary operator: the expression
1 to 10 by 2 generates the odd integers from 1 through 9.
- MDN, nmve. "Conditional (ternary) Operator". Mozilla Developer Network. MDN. Retrieved 20 February 2017. CS1 maint: discouraged parameter (link)
- Jeremiah Certaine (1943) The ternary operation (abc) = a b−1c of a group, Bulletin of the American Mathematical Society 49: 868–77 MR0009953
- Christopher Hollings (2014) Mathematics across the Iron Curtain: a history of the algebraic theory of semigroups, page 264, History of Mathematics 41, American Mathematical Society ISBN 978-1-4704-1493-1
- Hoffer, Alex. "Ternary Operator". Cprogramming.com. Cprogramming.com. Retrieved 20 February 2017. CS1 maint: discouraged parameter (link)
- "6. Expressions — Python 3.9.1 documentation". docs.python.org. Retrieved 2021-01-19.
- "7.7 Expressions". caml.inria.fr. Retrieved 2021-01-19.
- Media related to Ternary operations at Wikimedia Commons