function X=mc(A,B)

[Q R]=qr(A);
C=Q'*B;
r=size(A,2); %le rang de A est aussi rang(A,0), aux erreurs d'arrondis près
X=R(1:r,:)\C(1:r,:);