# Fuzzy Logic (namespace Fuzzy)

 Set
 Fuzzy::Set& operator =(const Fuzzy::Set& init) Fuzzy::Value IF(const Fuzzy::Set& input) Fuzzy::Value IF(const Fuzzy::Value input) Fuzzy::Value& GetFuzzyValue(double input) Set() Set(const Fuzzy::Set& init) bool CreateGaussian(double center, double width)It creates a gaussian fuzzy set bool CreateHeavyTailed(double center, double width)It creates a heavy tailed fuzzy set bool CreateLeftGaussian(double center, double width)It creates a left gaussian fuzzy set bool CreateLeftHeavyTailed(double center, double width)It creates a left heavy tailed fuzzy set bool CreateLeftSigmoidal(double crossoverPoint, double slope)It creates a left sigmoidal fuzzy set bool CreateLeftTrapezoidal(double a, double b)It creates a left trapezoidal fuzzy set using the values: (a , 1) and (b, 0) with a < b The membership is "one" for any input value that is less than "a" bool CreateRightGaussian(double center, double width)It creates a right gaussian fuzzy set bool CreateRightHeavyTailed(double center, double width)It creates a right heavy tailed fuzzy set bool CreateRightSigmoidal(double crossoverPoint, double slope)It creates a right sigmoidal fuzzy set bool CreateRightTrapezoidal(double a, double b)It creates a right trapezoidal fuzzy set using the values (x,y): (a , 0) and (b, 1) with a < b The membership is "one" for any input value that is greater than "b" bool CreateSigmoidal(double center, double slope)It creates a sigmoidal fuzzy set bool CreateTrapezoidal(double a, double b, double c, double d)It creates a trapezoidal fuzzy set using the values: (a , 0), (b, 1), (c, 1), (d, 0) with a < b < c < d bool CreateTriangular(double a, double b, double c)It creates a triangular fuzzy set using the values: (a , 0), (b, 1) and (c, 0) with a < b < c bool GetGaussian(double& out_center, double& out_width)It returns the center and width of gaussian fuzzy set bool GetHeavyTailed(double& out_center, double& out_width)It returns the center and width of heavy tailed fuzzy set bool GetLeftSigmoidal(double& out_crossoverPoint, double& out_slope)It returns the values of a left sigmoidal fuzzy set bool GetLeftTrapezoidal(double& out_a, double& out_b)It returns the point values of a left trapezoidal fuzzy set bool GetRightSigmoidal(double& out_crossoverPoint, double& out_slope)It returns the values of a right sigmoidal fuzzy set bool GetRightTrapezoidal(double& out_a, double& out_b)It returns the point values of a right trapezoidal fuzzy set bool GetSigmoidal(double& out_center, double& out_slope)It returns the values of a sigmoidal fuzzy set bool GetTrapezoidal(double& out_a, double& out_b, double& out_c, double& out_d)It returns the point values of a trapezoidal fuzzy set bool GetTriangular(double& out_a, double& out_b, double& out_c)It returns the values of a triangular fuzzy set double GetMembership(double input)It returns the set membership for the input value. The returned value is in the range from 0 to 1 int GetType()It returns one of: FUZZY_SET_ERROR, FUZZY_SET_TRIANGULAR, FUZZY_SET_TRAPEZOIDAL, FUZZY_SET_LEFTTRAPEZOIDAL, FUZZY_SET_RIGHTTRAPEZOIDAL, FUZZY_SET_SIGMOIDAL, FUZZY_SET_LEFTSIGMOIDAL, FUZZY_SET_RIGHTSIGMOIDAL, FUZZY_SET_GAUSSIAN, FUZZY_SET_HEAVYTAILED void Delete() ~ Set()

 Value
 Fuzzy::Value operator &&(const Fuzzy::Value& init)const Fuzzy::Value operator ||(const Fuzzy::Value& init)const Fuzzy::Value& operator =(const Fuzzy::Value& init) Fuzzy::Value& operator =(const double& init) Value() Value(const Fuzzy::Value& init) Value(const double init) void IF(const Fuzzy::Value& value) ~ Value()

 Variable