# Arithmetic function to return lowest in-parameter

Is there a mathematical function such that;

f(3, 5)   = 3
f(10, 2)  = 2
f(14, 15) = 14
f(9, 9)   = 9


It would be even more cool if there's a function that takes three (3) parameters, but that one could be solved by using recursive functionality;

f( f(3, 5), 4) = 3

-
You mean you don't consider min(x,y) a mathematical function? Please define "mathematical function". – Alex B. Dec 6 '10 at 13:43
@Alex Bartel, Well, yes I do - but could it be expressed with arithmetic operators? – Björn Dec 6 '10 at 13:49

$$f(x,y)=\frac{x+y-|x-y|}{2}$$

Oscar gave a nice interpretation of the above formula in his follow-up question, but I'll give a dumb derivation here for completeness.

Making use of Iversonian brackets, we have

$$\min(x,y)=x[y \geq x]+y[y < x]$$

and since $[\neg p]=1-[p]$,

$$\min(x,y)=x[y \geq x]+y(1-[y \geq x])=y-(y-x)[y-x \geq 0]$$

Now, there is the identity

$$\frac{u+|u|}{2}=u[u \geq 0]$$

and so we have

$$\min(x,y)=y+\frac{x-y-|x-y|}{2}$$

which simplifies to the desired expression.

The extension to more than two arguments is no longer as compact, though, since one now has to contend with products of Iversonian brackets ($[p \land q]=[p]\cdot[q]$).

-
Is there some nice way of expressing the minimum of three variables using the absolute value function? (Where nice means that the expression is symmetric in the three variables; f(x,f(y,z)) doesn't count because it isn't pretty enough.) – Oscar Cunningham Dec 6 '10 at 14:07
Maybe that ought to be a separate question, @Oscar... (I don't know the answer either.) – J. M. Dec 6 '10 at 14:12
I don't really see in what sense the absolute value is more of an "arithmetic operator" than min. – Qiaochu Yuan Dec 6 '10 at 22:53
Thanks @J.M., you saved my head from being exploded. – Adnan Aug 20 '12 at 12:55