### Function dependence flexibility

I'd like to declare an unknown function f. If I had one variable x, I would write

```
f=function('f')(x)
```

Instead, I would like to declare this function with a variable list (or tuple) that has unknown length at the beginning of the program. For example,

```
f=function('f')(x,y)
```

has two variables or

```
f=function('f')(x,y,t)
```

has three.

I can get a list (or tuple) containing my variables just before the function declaration:

```
vars=[x,y,z,t]
```

Then how can I declare my function like

```
f=function('f')(vars)
```

?