Documentation‎ > ‎

### NCFlatExt

 description: [IsFlatExt,SDP_data,rank_d,V_new,M_d,var,sizeM_small,tol] = NCFlatExt(f) checks whether the extension of the dual moment matrix M_{d} over M_{d-1}, where d=deg(f), is flat.arguments: f is an NCpoly representing a polynomial. output: IsFlatExt == 1 iff there is a flat extensionSDP_data is a structure holding all the data used in SDP solver, undelying the M_d problem  rank_d equals the rank of the matrix M_d (and the rank of M_{d-1} in  case of flatness) V_new is a cell representing the vector of all monomials with degree <=dM_d is the M_{d} moment matrix (dual to the NCcycSos problem)var is a cell of all variables contained in the underlying polynomial fsizeM_small is the size of the square matrix M_{d-1}tol equals the tolerance used to compute rank_dpossible usage: NCFlatExt(f)see also: example: >> IsFlatExt = NCFlatExt(BMV(8,2))***** Polynomial does not have a flat extension *****IsFlatExt = 0>> f = 3 + x^2 + 2*x^3 + 2*x^4 + x^6 - 4*x^4*y + x^4*y^2 + 4*x^3*y + 2*x^3*y^2 - 2*x^3*y^3 + 2*x^2*y - x^2*y^2 + 2*x^2*y^3 - 4*x*y + 8*x*y*x*y + 4*x*y^2 + 6*x*y^4 - 2*y + y^2 - 4*y^3 +  2*y^4 + 2*y^6;>> IsFlatExt = NCFlatExt(f)***** Polynomial has a flat extension *****IsFlatExt = 1