## Bilinear maps and dual spaces

Think of a function that takes two inputs and gives one output. The **+** operator is like that. 9**+**10**=**19 or, if you prefer to be computer-y about it, `plus(`

9, 10`) returns`

19.

So is the relation “the degree to which `X`

loves `Y`

”. Takes as inputs two people and returns the degree to which the first loves the second. Not necessarily symmetrical! I.e. `love(`

A→B`) ≠ love(`

B→A`)`

. * It can get quite dramatic.

An **operator** could also take three or four inputs. The vanilla Black-Scholes price of a call option asks for **{**the current price, desired exercise price, [European | American | Asian], date of expiry, volatility**}**. That’s five inputs: three ℝ⁺ numbers, one option from a set isomorphic to {1,2,3} = ℕ₃, and one date.

A **bilinear map** takes two inputs, and it’s linear in both terms. Meaning if you adjust one of the inputs, the final change to the output is only a linear difference.

Multiplication is a bilinear operation (think **3×17** versus **3×18**). Vectorial dot multiplication is a bilinear operation. Vectorial cross multiplication is a bilinear operation but it returns a vector instead of a scalar. Matrix multiplication is a bilinear operation which returns another matrix. And tensor multiplication **⊗**, too, is bilinear.

Above, Juan Marquez shows the different bilinear operators and their duals. The point is that it’s just symbol chasing.

***** The distinct usage “I love sandwiches” would be considered a separate mathematical operator since it takes a different kind of input.