# Evaluation semantics ## Single equation Assume we have given the following definition: ~~~ f x = x + 1 ~~~ Then the expression `f (f 13)` is evaluated in this way: ~~~ f (f 13) f (13 + 1) because f 13 = 13 + 1 f 14 14 + 1 because f 14 = 14 + 1 15 ~~~ ## Multiple equations If we have a more complicated function definition: ~~~ fib 1 = 1 fib 2 = 1 fib n = fib (n-1) + fib (n-2) ~~~ the expression `fib 4` is evaluated as ~~~ fib 4 fib (4-1) + fib (4-2) because fib 4 = fib (4-1) + fib (4-2) fib 3 + fib 2 (fib (3-1) + fib (3-2)) + fib 2 because fib 3 = fib (3-1) + fib (3-2) fib 2 + fib 1 + fib 2 because fib 3 = fib (3-1) + fib (3-2) 1 + fib 1 + fib 2 because fib 2 = 1 1 + 1 + fib 2 because fib 1 = 1 2 + fib 2 2 + 1 because fib 2 = 1 3 ~~~