0 | : | nat |
apply | : | [nat × nat] ⟶ nat |
avg | : | [nat × nat] ⟶ nat |
check | : | [nat] ⟶ nat |
fun | : | [nat → nat] ⟶ nat |
s | : | [nat] ⟶ nat |
X | : | nat |
Y | : | nat |
U | : | nat |
V | : | nat |
I | : | nat → nat |
P | : | nat |
X1 | : | nat |
avg(s(X), Y) | ⇒ | avg(X, s(Y)) |
avg(U, s(s(s(V)))) | ⇒ | s(avg(s(U), V)) |
avg(0, 0) | ⇒ | 0 |
avg(0, s(0)) | ⇒ | 0 |
avg(0, s(s(0))) | ⇒ | s(0) |
apply(fun(I), P) | ⇒ | I · check(P) |
check(s(X1)) | ⇒ | s(check(X1)) |
check(0) | ⇒ | 0 |