public double Defuzzificate(double xv, double fiv, DefuzzificationMethod method =
                                    DefuzzificationMethod.GravityCentre)
        {
            double[] args   = { xv, fiv };
            double   min    = premise.GetConfidence(args);
            FuzzySet result = new FuzzySet((x) => Math.Min(teta.GetConfidence(x), min),
                                           teta.XMin[0], teta.XMax[0]);

            return(result.Defuzzification(method));
        }