# Associate Law For Functions Compose

Feb 22, 2023

The derivation process for functions compose

The introduction for functions compose is here.

Definition : Functions Compose

compose = (funa, funb) => (c) => funa(funb(c));

Now we are supposed to give the proof and derivation process of the following conclusions

Associate Law For Functions Compose

compose((funa, funb), func)) = compose(funa, (funb, func))

It's simple to prove this proposition with the definition of functions compose.

according to

```
compose(a, b) = (D) => a(b(D));
```

We assign the argument `b`

with

```
b = compose(x, y);
```

So we get

```
compose(a, b) = compose(a, compose(x, y))
= (D) => a(compose(x, y))
= (D) => a(x(y(D)))
```

We find that

```
(D) => a(x(y(D)))
= (D) => compose(compose(a,x),y)
```

So we have the conclusion

```
compose(compose(a, x), y) = compose(a,compose(x, y));
```

QED.

We logically have the expanded conclusion: If there are n function combinations

$compose(...,a_{i},a_{i+1},...,compose(a_{j},a_{j+1},...),...,a_{n}) \\ = compose(...,a_{x},a_{x+1},...,compose(a_{y},a_{y+1},...),...,a_{n}); \\ i,j,x,y∈(0,n]; j-i = y-x$The proof of this proposition is omitted.