Matrix with zero columns multiplied by vector with zero elements yields vector

I see no problem here. If you multiply a real n\times m matrix by a vector in \mathbb{R}^m, you get a vector in \mathbb{R}^n. You are looking at the case m=0, n=2. (Note that your B is a vector!)

If you make B a 0\times 0 matrix, then you indeed get a 2\times 0 matrix:

julia> A = zeros(2, 0); B = zeros(0, 0); A * B
2×0 Matrix{Float64}
3 Likes