private bool AddSymbols(Feature feature, FeatureSymbol[] symbols, int id) { if (symbols.Any(s => s.Feature != feature)) return false; var symbolFeature = (SymbolicFeature) feature; var value = new SymbolicFeatureValue(_not ? symbolFeature.PossibleSymbols.Except(symbols) : symbols); _fs.AddValue(symbolFeature, value); _not = false; if (id > -1) _ids[id] = value; return true; }