- •Contents
- •Preface
- •1 Introduction
- •1.1 Issues of Vagueness
- •1.3 The Problem of the Fringe
- •1.4 Preview of the Rest of the Book
- •1.5 History and Scope of Fuzzy Logic
- •1.6 Tall People
- •1.7 Exercises
- •2 Review of Classical Propositional Logic
- •2.1 The Language of Classical Propositional Logic
- •2.2 Semantics of Classical Propositional Logic
- •2.3 Normal Forms
- •2.4 An Axiomatic Derivation System for Classical Propositional Logic
- •2.5 Functional Completeness
- •2.6 Decidability
- •2.7 Exercises
- •3.2 Semantics of Classical First-Order Logic
- •3.3 An Axiomatic Derivation System for Classical First-Order Logic
- •3.4 Exercises
- •4.1 Numeric Truth-Values for Classical Logic
- •4.2 Boolean Algebras and Classical Logic
- •4.3 More Results about Boolean Algebras
- •4.4 Exercises
- •5.2 Lukasiewicz’s Three-Valued Logic
- •5.3 Bochvar’s Three-Valued Logics
- •5.5 Normal Forms
- •5.7 Lukasiewicz’s System Expanded
- •5.8 Exercises
- •6.3 Exercises
- •7.3 Tautologies, Validity, and “Quasi-”Semantic Concepts
- •7.4 Exercises
- •8.3 Exercises
- •9.3 MV-Algebras
- •9.4 Exercises
- •11 Fuzzy Propositional Logics: Semantics
- •11.1 Fuzzy Sets and Degrees of Truth
- •11.2 Lukasiewicz Fuzzy Propositional Logic
- •11.3 Tautologies, Contradictions, and Entailment in Fuzzy Logic
- •11.4 N-Tautologies, Degree-Entailment, and N-Degree-Entailment
- •11.5 Fuzzy Consequence
- •11.7 T-Norms, T-Conorms, and Implication in Fuzzy Logic
- •11.9 Product Fuzzy Propositional Logic
- •11.10 Fuzzy External Assertion and Negation
- •11.11 Exercises
- •12 Fuzzy Algebras
- •12.2 Residuated Lattices and BL-Algebras
- •12.3 Zero and Unit Projections in Algebraic Structures
- •12.4 Exercises
- •13 Derivation Systems for Fuzzy Propositional Logic
- •13.1 An Axiomatic System for Tautologies and Validity in Fuzzy
- •13.2 A Pavelka-Style Derivation System for Fuzzy
- •13.3 An Alternative Axiomatic System for Tautologies and Validity in FuzzyL Based on BL-Algebras
- •13.7 External Assertion Axioms
- •13.8 Exercises
- •14.1 Fuzzy Interpretations
- •14.2 Lukasiewicz Fuzzy First-Order Logic
- •14.3 Tautologies and Other Semantic Concepts
- •14.4 Lukasiewicz Fuzzy Logic and the Problems of Vagueness
- •14.6 Product Fuzzy First-Order Logic
- •14.8 Exercises
- •15.3 An Axiomatic Derivation System for Fuzzy
- •15.4 Combining Fuzzy First-Order Logical Systems; External Assertion
- •15.5 Exercises
- •16 Extensions of Fuzziness
- •16.2 Fuzzy “Linguistic” Truth-Values
- •16.3 Other Fuzzy Extensions of Fuzzy Logic
- •16.4 Exercises
- •17 Fuzzy Membership Functions
- •17.2 Empirical Construction of Membership Functions
- •17.3 Logical Relevance?
- •17.4 Exercises
- •Bibliography
- •Index
14Fuzzy First-Order Logics: Semantics
14.1Fuzzy Interpretations
Interpretations for fuzzy first-order logic use fuzzy sets to represent the meanings of vague predicates. Recall from Chapter 11 that a fuzzy set is a set to which entities belong to certain degrees, ranging from 1 (absolutely a member) to 0 (definitely not a member). An interpretation will represent each fuzzy set as a function mapping n-tuples of members of the domain to their degrees of membership in the set.
An interpretation I for fuzzy first-order logic consists of
1.A nonempty set D (the domain)
2.An assignment to each predicate Pn (of arity n) of a function mapping each n-tuple of members of D to a value in [0. .1]:
I(Pn)(<x1, . . . , xn>) [0. .1]
3.An assignment of a member of D to each individual constant a: I(a) D.
Here’s an example of a (partial) interpretation (where we use T for tall and E for is one-eighth inch less than):
D: set of heights between 4 7 and 6 7 by 1/8 increments, inclusive I(T)(<x>) = (x – 4 7 ) / 24
(i.e., subtract 4 7 from the height x and divide the result by 24 )
I(E)(<x1,x2>) = 1 if x1 is 1/8 less than x2 0 otherwise
I(a) = 6 7
I(b) = 6 67/
8
I(c) = 5 8 I(d) = 5 7
I(e) = 5 67/
8
I(f) = 5 1 I(g) = 4 7
and here are some values that this interpretation produces for the fuzzy set of heights: I(T)(<6 7 >) = 24/24 (i.e., 1); I(T)(<6 67/8 >) = 191/192 (approx .995);
262
14.2 Lukasiewicz |
Fuzzy First-Order Logic |
263 |
I(T )(<5 8 >) = 104/192 (approx. .54); I(T )(<5 |
7 >) = 12/24 (.5); and I(T )(<4 7 >) = |
0/24 (i.e., 0). We’ll refer to this interpretation as SST (for six foot seven is tall).
The specific function assigned to T was chosen to produce a reasonable representation of degrees of membership in the fuzzy set of tall heights, but there certainly are other plausible ways to define this function. However, fuzzy logical systems are defined independently of specific membership functions, so we’ll wait until Chapter 17 to discuss other approaches to defining membership functions. The sample function that we present for SST—which will be sufficient for investigating how fuzzy first-order logic handles vagueness—is merely meant to illustrate how we can define membership functions for fuzzy predicates like tall. SST also demonstrates how to interpret crisp predicates by assigning only 1 and 0 as membership values.
14.2 Lukasiewicz Fuzzy First-Order Logic
We begin our study of fuzzy first-order logics with a first order version of FuzzyL, which we’ll call FuzzyL .
To specify truth-conditions in FuzzyL we’ll once again need variable assignments: a variable assignment v assigns a member of the domain to each individual variable x, and an x-variant of a variable assignment v is an assignment v such that v (y) = v(y) for every variable y other than x (it may or may not assign the same value to x). As in earlier chapters we use the notation Iv(P) to stand for the value that a formula P has under a variable assignment v on an interpretation I.
Truth-conditions for atomic formulas are defined in FuzzyL as:
1.Iv(Pt1 . . . tn) = I(P)(<I*(t1), . . . , I*(tn)>), where I*(ti) is I(ti) if ti is a constant and is v(ti) if ti is a variable.
That is, the truth-value of an atomic formula is just the degree to which the n-tuple of entities denoted by the formula’s terms is a member of the fuzzy set corresponding to the predicate. So, on interpretation SST (given any variable assignment) we have the following values (rounded to the nearest thousandth, a practice we’ll adopt in examples to follow as well):
Iv(Ta) = 1
Iv(Tb) = .995
Iv(Tc) = .542
Iv(Td) = .5
Iv(Te) = .495
Iv(Tf) = .167
Iv(Tg) = 0
Iv(Eaa) = 0
Iv(Eab) = 0
Iv(Eba) = 1
Iv(Ebb) = 0
264 |
Fuzzy First-Order Logics: Semantics |
The truth-conditions for formulas governed by propositional connectives are defined as in FuzzyL:
2.Iv(¬P) = 1 – Iv(P)
3.Iv(P Q) = min (Iv(P), Iv(Q))
4.Iv(P Q) = max (Iv(P), Iv(Q))
5.Iv(P → Q) = min (1, 1 – Iv(P) + Iv(Q))
6.Iv(P ↔ Q) = min (1, 1 – Iv (P) + Iv(Q), 1 – Iv(Q) + Iv(P))
7.Iv(P & Q) = max (0, Iv(P) + Iv(Q) – 1)
8.Iv(P Q) = min (1, Iv(P) + Iv(Q))
These clauses give the following fuzzy truth-values based on the interpretation SST:
Formula |
Value |
¬Ta |
0 |
¬Tc |
.458 |
¬Tg |
1 |
Ta Tb |
.995 |
Ta Td |
.5 |
Ta Tg |
0 |
Ta Tb |
1 |
Tb Tc |
.995 |
Tb Tf |
.995 |
Ta → Tb |
.995 |
Td → Te |
.995 |
Tb → Tg |
.005 |
Tc ↔ Tf |
.625 |
Ta & Tb |
.995 |
Tb & Tc |
.537 |
Td & Te |
0 |
Ta Tb |
1 |
Tb Tf |
1 |
Te Tf |
.662 |
In Chapter 9 we used the min and max functions to define the numeric truthconditions for quantified formulas of L3, on the basis of the idea that universal quantification is like conjunction (the min function) and existential quantification is like disjunction (the max function). However, we can’t use the min and max functions to interpret the quantifiers in FuzzyL . Suppose, for example, that we interpret a fuzzy predicate F over the domain [0. .1] (a legitimate domain; we may wish to talk about the real numbers in the unit interval) as follows:
I(F)(<x>) = 1 if x = 0
x/2 otherwise
14.2 Lukasiewicz |
Fuzzy First-Order Logic |
265 |
Now, what is the minimum value that Fx can have? There isn’t one—it gets as close to 0 as you like, but never quite there. So once again we’ll use the greatest lower bound (glb) of a set of real numbers from the unit interval; recall that a number n in [0. .1] is the greatest lower bound of a set R of real numbers in [0. .1] if and only if n is less than or equal to each member of R, and there is no m in [0. .1] such that m is also a lower bound of R but m is greater than n. For a similar reason, we’ll use the dual concept of least upper bound (lub) instead of the maximum function, where a number n in [0. .1] is the least upper bound of a set R of real numbers in [0. .1] if and only if n is greater than or equal to each member of R, and there is no m in [0.
.1] such that m is also an upper bound of R but m is less than n. Here are the truth-conditions for quantified formulas in FuzzyL :
9.Iv(( x)P) = glb{Iv (P): v is an x-variant of v}
10.Iv(( x)P) = lub{Iv (P): v is an x-variant of v}
The notation glb {Iv ( P): v is an x-variant of v} stands for the greatest lower bound of the values that the formula P can have for any x-variant of v; similarly for lub
{Iv (P): v is an x-variant of v}. Given these clauses and the interpretation
I(F)(<x>) = 1 if x = 0
x/2 otherwise
of the predicate F, the formula ( x)Fx has the value 0, since that is the greatest lower bound of the values that Fx can have, while the formula ( x)Fx has the value 1.
Finally, the value assigned to a closed formula (a formula with no free variables) on an interpretation is the value that is assigned to that formula under every variable assignment on that interpretation. As in classical and three-valued first-order logic, the value assigned to a closed formula will be the same with respect to every variable assignment on a given interpretation.
We’ll look at a few quantified formulas using interpretation SST. The formula ( x)Tx has the value 0 on SST. Every variable assignment has an x-variant that assigns 4 7 to x, and Tx has the value 0 on such a variant. Thus 0 is the greatest lower bound of the values that Tx can receive on any assignment’s x-variants, so every variable assignment v assigns the value 0 to the quantified formula ( x)Tx. On the other hand, the formula ( x)Tx has the value 1 on SST. Every variable assignment has an x-variant that assigns 6 7 to x, and on this variant the formula Tx has the value 1. So 1 is the least upper bound of the values that Tx can have on any x-variant, and this means that ( x)Tx is assigned the value 1 by every variable assignment.
Now consider the weak disjunction version of the Law of Excluded Middle formula, ( x)(Tx ¬Tx). The value of ( x)(Tx ¬Tx) on SST is the greatest lower bound of the values that Tx ¬Tx can receive on any variable assignment, which is .5. If a variable assignment v assigns 5 7 to x then max(Iv(Tx), 1 – Iv(Tx)) = max(.5, .5) =
.5, and this is the smallest value we can get for the disjunction—when we assign a taller height to x the value of the first disjunct increases, and when we assign a