# function with vector argument notation

I have some questions on functions that take real-valued vectors as arguments which I would like to resolve.

Given $$x \in \mathbb{R}^a, y\in \mathbb{R}$$. I know the notation $$g: \mathbb{R}^a \rightarrow \mathbb{R}$$, which means that $$g$$ is a function that takes a vector of size $$a$$ as an argument and outputs a scalar.

But what if I have something like $$z = g(x,y)$$ with $$x \in \mathbb{R}^a, y\in \mathbb{R}^b, z\in \mathbb{R}$$? What would be the correct notation?

Something like $$g:\mathbb{R}^a \times \mathbb{R}^b \rightarrow \mathbb{R}$$? Or $$g:\mathbb{R}^{a+b} \rightarrow \mathbb{R}$$? Or something different?

And is that the same btw? Because by the rules of exponentiation, it should be the same but how can one then distinguish between a function that takes two vectors, one of size $$a$$ and one of size $$b$$ or a function that just takes one vector, but that one of size $$a + b$$?