Analysis: add classes to manage constraints on symbolic dimensions
The idea is to be able to impose some constraints on dimensions, for example:
function c=add(a,b)
c = a + b;
endfunction
if add is called with double matrice argument, the function will have the signature add(double[r1,c1], double[r2,c2]).
On the addition, the checker will say that the result is unknown (since the dimensions are not always the same),
so in this case we can add a constraint r1==r2 and c1==c2, if this constraint is verified then it will be add to the
function signature.
The function signature will become:
add(double[r1,c1], double[r2,c2]) with constraint r1==r2 && c1==c2
Change-Id: Ife39165c830221faba1e66676d663e39cde63105