function M3 = symdiff_dfsa(M1,M2) % M3 is the symmetric difference of M1 and M2 % see str2dfsa.m for basic dfsa definitions notM2 = negate_fsa(M2); M1lessM2 = intersect_dfsa(M1,notM2); %M1lessM2 = minimize_dfsa(M1lessM2); notM1 = negate_fsa(M1); M2lessM1 = intersect_dfsa(notM1,M2); %M2lessM1 = minimize_dfsa(M2lessM1); M3 = union_dfsa(M1lessM2,M2lessM1); return