Fuzzy Normal Forms
This 3D application aims to display the difference between conjunctive normal forms (CNF) and disjunctive normal forms (DNF) for a given De Morgan Triple. If you can not see the black background please install latest flash player to run the application. On full screen mode click and drag to rotate the plane in 3D.
Main Idea
In classical set theory CNF and DNF are totally equal, but in fuzzy set theory, where De Morgan Triples used, CNF and DNF are not totally equal. This fact was shown first by İ. Burhan Türkşen.
The application calculates the CNF and DNF for [0 1]x[0 1] plane (actually for only 21x21 points) and display CNF values as one plane (in blue color) and DNF values as another plane (in green color). The base plane is shown with white color.
So for each point (x, y) we have (x, y, 0), (x, y, CNF) and (x, y, DNF).
Mathematical Background
In classic set theory the standard union, intersection and negation operators works fine to build a truth table since we have 0s and 1s to calculate. But in fuzzy set theory they are not enough to calculate the membership of a element to a set. The solution is to use De Morgan Triples. For example Zadeh's de Morgan Triples are {min(x,y), max(x,y), 1-x} where x and y are membership values of to elements.
X | Y | X and Y | X or Y | Zadeh's and min(X,Y)/> |
Zadeh's or max(X,Y)/> |
1 | 1 | 1 | 1 | 1 | 1 |
1 | 0 | 0 | 1 | 0 | 1 |
0 | 1 | 0 | 1 | 0 | 1 |
0 | 0 | 0 | 0 | 0 | 0 |
0.73 | 0.35 | ? | ? | 0.35 | 0.73 |
Conjunctive normal form (CNF) is a normalization of a logical formula which is a conjunction of disjunctive clauses and Disjunctive Normal Form (DNF) is a normalization of a logical formula which is a disjunction of conjunctive clauses.
Formula | Conjunctive Normal Form | Disjunctive Normal Form |
A and B | (A or B) and (not A or B) and (A or not B) | A and B |
A or B | A or B | (A and B) or (not A and B) or (A and not B) |
A -> B | not A or B | (not A and B) or (not (not A) and B) or (not A and not B) |
Used De Morgan Triples
De Morgan Triples used in this application:
Triple Name | Intersection (t-norm) | Union (t-conorm) | Negation |
Zadeh | min(x,y) | max(x,y) | 1-x |
Probabilistic | x*y | x + y - x*y | |
Lukasiewicz | max( x+y-1, 0) | min( x+y, 1) | |
Dubois and Prade | 1 - ( (1-x)*(1-y) / max(1-x, 1-y, a) ) | (x*y) / max(x, y, a) | |
Schweizer and Sklar 1 | 1 -( (1-x)^{a}+(1-y)^{a}-((1-x)*(1-y))^{a})^{1/a} | (x^{a}+y^{a}-(x*y)^{a})^{1/a} | |
Schweizer and Sklar 2 | max(0, (x^{-a})+(y^{-a})-1])^{-1/a} | 1 - max( (1-x)^{-a}+(1-y)^{-a}-1, 0 )^{-1/a} | |
Hamacher | (x*y) / (a+(1-a)*(x+y-x*y)) | (x+y-(2-a)*x*y) / (1-(1-a)*x*y) | |
Frank | log_{a}(1+(a^{x}-1)*(a^{y}-1)/(a-1)) | 1 - log_{a}(1+(a^{1-x}-1)*(a^{1-y}-1)/(a-1)) | |
Yager | x*y / max(x, y, a) | min(1 (x^{a}+y^{a})^{1/a}) | (1-x^{a})^{1/a} |
Links
Version Histroy
1.3 (2014-01-05)
- Ported to aydos.com
1.2 (2011-08-01)
- Small changes
1.0 (2009-09-15)
- First release