On the Semantics and Automated Deduction for ... - Semantic Scholar

Report 1 Downloads 100 Views
On the Semantics and Automated Deduction for PLFC, a logic of possibilistic uncertainty and fuzziness Teresa Alsinet

Computer Science Dept. Universitat de Lleida (UdL) 25080 Lleida, Spain [email protected]

Llus Godo

AI Research Inst. (IIIA) CSIC 08193 Bellaterra, Spain [email protected]

Abstract Possibilistic logic (PL) is a well-known graded logic of uncertainty suitable to reason under incomplete information and partially inconsistent knowledge, which is built upon classical rst order logic. Recently, a syntax of an extension of PL (called PLFC) dealing with fuzzy constants and fuzzily restricted quanti ers has been proposed. In this paper we present steps towards both the formalization of PLFC itself and an automated deduction system for it by (i) providing a formal semantics; (ii) de ning a sound resolution-style calculus by refutation; and (iii) describing a rst-order proof procedure for PLFC clauses based on (ii) and on a novel notion of most general substitution of two literals in a resolution step.

1 Introduction The necessity-valued fragment of Possibilistic logic [2] is a logic of uncertainty to reason under incomplete information and partially inconsistent knowledge, built upon classical rst order logic. There exists for PL a proof procedure based on a refutation complete resolution-style calculus. Recently, in [3] a syntax of an extension of PL (called PLFC) dealing with fuzzy constants and fuzzily restricted quanti ers has been proposed. In this paper we present steps towards both the formalization of PLFC itself and an automated deduction system for it by (i) providing a formal semantics; (ii) de ning a sound resolution-style calculus by refutation; and (iii) describing a rst-order proof procedure for PLFC clauses based on (ii) and on a novel notion of most general substitution of two literals in a resolution step. In contrast to standard PL semantics, truth-evaluation of formulas with fuzzy constants are many-valued instead of boolean, and consequently

Sandra Sandri

CS and Applied Math. Lab. (LAC) INPE S. Jose Campos 12201-970, Brazil [email protected]

an extended notion of possibilistic uncertainty is also needed. Remark, however, that PLFC is an uncertainty logic and clearly departs from truth-functional fuzzy logic systems and the like [5]. The paper is organized as follows. Next section is a refresh of standard Possibilistic logic, while in Section 3 we recall the extension PLFC as proposed in [3]. Sections 4 and 5 deal with all the necessary semantical aspects of PLFC to be able to provide sound resolution rule refutation mechanisms in Section 6. Finally, based on them, in Section 7 we describe an automated deduction method for PLFC. Proofs of propositions and theorems are gathered in an appendix.

2 Background on (necessity-valued) Possibilistic logic In necessity-valued Possibilistic logic each formula is represented by a pair ('; ), ' being a classical, closed rst order logic formula and 2 (0; 1] being a lower bound on the belief on p in terms of necessity measures. A formula ('; ) is thus interpreted as a constraint N (')  , where N is a necessity measure on propositions, a mapping from the set of logical formulae to a totally ordered bounded scale, usually (but not necessarily) given by [0, 1], characterized by the axioms (i) N (>) = 1, (ii) N (?) = 0, (iii) N (' ^ ) = min(N ('); N ( )), (iv) N (') = N ( ), if ' and are classically equivalent, where > and ? denote respectively tautology and contradiction. The necessity-valued Possibilistic logic (simply Possibilistic logic from now on) is axiomatized (Hilbertstyle) by the axioms of classical f.o. logic weighted by 1, together with the following graded versions of the

usual modus ponens and generalization inference rules, ('; ); (' ! ; ) [MP ]; ('; ) [G] ( ; min( ; )) ((8x)'; ) together with a weight weakening rule ('; ) [W ] ('; ) for  . We shall denote by `PL the notion of proof in Possibilistic logic derived from this formal system of axioms and rules. Resolution is an automated deduction method which has been nicely adapted to Possibilistic logic. Indeed, let K be a knowledge base formed by possibilistic clauses, i.e. possibilistic formulas of the type ( ; ), where is a (f.o. or propositional) clause in the usual sense. Then, it holds that a formula ('; ) is entailed in Possibilistic logic from the knowledge base K , i.e. K `PL ('; ), i we obtain a proof of (?; ) by successively applying the resolution rule below in W K [ f(:i ; 1) j i = 1; ng, where i=1;n i is the clausal form of ': (:p _ q; ); (p _ r; ) [Res] (q _ r; min( ; )) In other words, if we denote the above procedure of proof by refutation through resolution by `rPL, we have that K `PL ('; ) i K `rPL ('; ). Moreover, using the `rPL procedure, other rules can be derived, for instance the fusion rule (p; ); (p; ) : (p; max( ; )) Now, let us recall here the usual (monotonic) semantics for possibilistic logic. For the sake of an easier understanding we rst consider the propositional case, and after the rst order case.

The propositional case. Notation: Let L be a

propositional language and let be the set of classical interpretations for L, that is, the set of evaluations w of the atoms of the language into the boolean truth value set f0; 1g. Each evaluation of atoms w extends to any clause in the usual way, and thus for any ', w(') 2 f0; 1g. For any clause ', we will write w j= ' i w(') = 1. We shall also write ['] to denote the set of models of ', i.e. ['] = fw 2 j w j= 'g. Belief states are modelled by normalized possibility distributions  : ! [0; 1] on the set of possible interpretations. A possibility distribution  is normalized when there is at least one w 2 such that (w) = 1. In other words, belief states modelled by normalized distributions are consistent states, in the sense that

at least one interpretation (or state or possible world) has to be fully plausible. These will be our possibilistic models. The satisfaction relation between possibilistic models (i.e. possibility distributions) and possibilistic formulas is de ned as follows:

 j= ('; ) i N (['] j )  , where N (: j ) is the necessity measure induced by  on the power set of , de ned as N (['] j ) = inf w2 max(1 ? (w); w(')) = inf w6j=' 1 ? (w). If  j= ('; ) we say that  is a model of ('; ). An interesting equivalent expression is:

 j= ('; ) i for all w 2 , (w)  max(1 ? ; w(')), As usual, if ? denotes a set of possibilistic clauses, we say that  is a model of ? i  is a model of each formula in ?. The possibilistic entailment, denoted j=PL , is then de ned as follows. ? j=PL ('; ) i  j= ('; ), for each  being model of ?. Dubois, Lang and Prade have shown [2] that this semantics makes Possibilistic logic sound and complete, and moreover, using refutation, the resolution-based proof system brie y sketched in the previous subsection is also sound and complete wrt to the above semantics, that is, ? j=PL ('; ) i ? `PL ('; ) i ? `rPL ('; )

First order case. When the language L is of rst order, things do not change very much. Possibilistic f.o. formulas are of the type ((8x : : : 8y)'(x : : : y); ),

where '(x : : : y) is a clause with free variables x : : : y. First order interpretations are structures w = (U; i; m), where U is a domain (or sets of domains if we have sorts), i maps each predicate of arity n to a subset of U n and m maps each object constant to an element of the domain U . Then, if ' is a closed f.o. formula, we continue writing w j= ' to denote that ' is true in the interpretation w. Now, possibilistic models are possibility distributions  on the set of f.o. interpretations of L, and possibilistic satisfaction and entailment are then just as in the propositional case. Completeness results for rst order possibilistic logic are also provided in [2].

3 Extending Possibilistic Logic: fuzzy constants and variable weights In [3] the authors propose an extension of possibilistic logic, always using formulas in clausal form, where, in order to deal with fuzzy predicates and ill-known values, variable weights and generalized fuzzy constants

are allowed respectively. In the rest of this paper we shall refer to this extension as PLFC. Variable weights are employed to enable the modelling of statements such as \the more x is A (or x belongs to A), the more certain is p(x)", where A is a fuzzy set. This is formalized as, for all x, \p(x) is true with a necessity of at least A (x)", and represented as (p(x); A(x)) where it is assumed, as in PL, that all variables appearing in a formula are universally quanti ed. When A is imprecise but not fuzzy, the interpretation of such a formula is just \8x 2 A, p(x)". So A acts as a ( exible if it is fuzzy) restriction on the universal quanti er. Fuzzy constants are used to model typical fuzzy statements of the type \in Brazil the mean temperature in December is about 25", represented as

mean temp(Brazil; december; about 25); where mean temp is a classical predicate and about 25 is a generalized constant. If about 25 denotes a

crisp interval of temperatures, then the above expression is interpreted as 9x 2 about 25 such that mean temp(Brazil; december; x) is true. So, fuzzy constants can be seen as ( exible) restrictions on an existential quanti er. In general, \L(B ) is true at least to degree ", will be represented as (L(B ); )

where L is either a positive or negative literal and B is a fuzzy set. Special attention must therefore be given when reading a literal such as :p(B ) in a possibilistic formula. For instance, if B is not fuzzy, (p(B ); 1) and (:p(B ); 1) have to read as \9x 2 B; p(x)" and \9x 2 B; p(x)" respectively. Moreover, a formula like (:p(B ) _ r(A); 1); where A and B are not fuzzy, should be interpreted as \it is certain that 9x 2 B; 9y 2 A, p(x) ! r(y)", that is completely di erent of \it is certain that 8x 2 B; 9y 2 A, p(x) ! r(y)", which would be represented as (:p(x) _ r(A); B (x))1 . In order to deal with variable weights and fuzzy constants, the following inference pattern was used (:p(x) _ q(x); A(x)); (p(B ) _ r; ) [RR] (q(B ) _ r; min( ; N (A j B ))) where N (A j B ) = inf x2X max(1 ? B (x); A (x)) is a necessity-like measure of how much certain is A given B . Details on how this pattern was justi ed can be 1 Notice that an expression like \it is certain that 8x 2 B; 9y 2 A, p(x) ^ r(y)" cannot be represented in PLFC since it would require the use of Skolem functions, which have not yet been treated in this framework.

found in [3]. Moreover, during the resolution process, variables may disappear in the logical part of a clause, but still appear in its valuation side. The following pattern was proposed to deal with this situation: (p(y); f (x; y)) (p(y); maxx2X f (x; y)) [FR] where f (x; y) is a valid valuation in the model, involving variables x and y. The underlying idea in [3] was to propose an extension of Possibilistic logic sticking to classical logic proof procedures as much as possible, in particular to refutation by resolution, as in standard Possibilistic logic. However there was no evaluation there about whether such a proof by refutation method can be supported by a well-de ned semantics.

4 Extending PL semantics We are concerned in providing PLFC with a sound semantics, extending the one provided for PL. So the matter is what has to be modi ed in the standrad PL semantics to support the extension of the logical constructs of PLFC. For example, consider the previously mentioned predicate mean temp(Brazil; december; about 25): Our intended interpretation is that about 25 is a fuzzy set describing temperatures around 25oC , in the range from ?50oC to 50oC , and with a particular membership function about 25 : [?50; 50] ! [0; 1]: In doing so, as far as we can see, we are introducing two major changes in the standard semantics of PL: (i) the truth evaluations of predicates and formulas are no longer boolean but many-valued, the set of truth-values becomes the whole unit interval [0, 1]; and (ii) the certainty evaluation of formulas in a possibilistic model has to be extended in a suitable manner, that is, we have to de ne what does N (' j ) mean when ' contain fuzzy constants.

(i) From boolean to many-valued. With re-

spect to standard Possibilistic logic, the main difference of truth evaluations is that now, for instance, in a particular interpretation, the predicate mean temp(Brazil; december; about 25) can be true (1), false (0), but also can take some intermediate truth degree, depending on how much the actual temperature in the interpretation ts with the fuzzy set about 25. For instance, consider the interpretation w1 = (U; i1 ; m1 ), where U = U1  U2  U3, U1 is a set of countries, U2 is the set of months and U3 = [?50; 50], i1 (mean temp) = f(Brazil, january, 30), . . . , (Brazil, december,27), : : :, (Spain; january; 5); : : : ; (Spain; december; 10) g;

and where m not only assigns elements of U to usual object constants, but also a fuzzy set (i.e. a membership function) to each fuzzy constant, in this case to about 25. Then it seems natural to take as truth degree of the formula mean temp(Brazil; december; about 25), in the interpretation w1 , the value

w1 (mean temp(Brazil; december; about 25)) = = m(about 25) (27) (= 0:7; say):

(ii) Certainty-evaluation. According to (i), we assume from now on that the truth evaluation of PLFC formulas ' in any interpretation w is a value w(') 2

[0; 1]. Therefore each PLFC formula does not induce anymore a crisp set of interpretations, but a fuzzy set of interpretations ['], de ning ['](w) = w('), for any w. Hence, if we want to continue measuring the uncertainty induced on a PLFC formula by a possibility distribution on the set of interpretations, we have to consider some extension for fuzzy sets (of interpretations) of the standard notion of necessity measure. The basic question is, given a belief state modelled by a possibility distribution , how to establish the possibilistic semantics of statements of the type

A is ? certain where A is a fuzzy set. We want to de ne a measure N (: j ), extension of the one previously introduced

for classical sets, in such a way that a possibility distribution  supports the statement i N (A j )  . This question has already been tackled by Dubois and Prade (see f.i. [2]) where they propose to use this index: N  (A j ) = winf (w) ) A (w) 2

where ) is the reciprocal of Godel many-valued implication, de ned as x ) y = 1, if x  y, x ) y = 1 ? x, otherwise. But the bad news about this candidate semantics is that proof by refutation (using the resolution rule of the previous section) is not sound, even though the resolution rule itself can be proved to be sound. Let us consider the following PLFC clauses

Ai = mean temp(Brazil; december; i), i = 1; 2, where 1 and 2 are trapezoidal fuzzy sets2 of temperatures de ned as 1 = [20; 24; 26; 30] and 2 = [20; 25; 25; 30]. It is easy to check that inf t2[?50;50] 1 (t) ) 2 (t) = 0, thus (A2 ; ) cannot be a logical consequence of (A1 ; 1) if > 0. On the other hand, by refutation, using the resolution rule RR introduced in the previous section, we get

We use the representation of a trapezoidal fuzzy set as [t1 ; t2 ; t3 ; t4 ] where the interval [t1 ; t4 ] is the support and the interval [t2 ; t3 ] is the core. 2

that f(A1 ; 1); (:A2 (x); 2 (x))g ` (?; ), where A2 (x) stands for mean temp(Brazil; december; x), and = N (2 j 1 ) = inf t2[?50;50] max(1 ? 1 (t); 2 (t)) = 4=9 > 0. Therefore, we have turned our attention to another notion necessity evaluation which would allow for a sound refutation proof procedure. And our alternative is to take N (A j ) = winf max(1 ? (w); A (w)) 2

This de nition obviously extends the standard notion of necessity degree when A is crisp. Now, the condition N (A j )  becomes equivalent to the inequality (w)  max(1 ? ; [A] (w)) for all w 2 , where [A] denotes the -cut of A, i.e. [A] = fw 2 j A (w)  g. We will show later that using this semantics a sound refutation-based proof procedure can be de ned. Moreover, there is a nice axiomatization for the above de ned necessity measure for fuzzy sets. Namely, let be a set and let N : [0; 1] ! [0; 1] be a measure on the set of fuzzy sets of

. Consider the following postulates: N1 N ( ) = 1 N2 N (;) = 0 N3 N (A \ B) = min(N (A); N (B)) ( N (\i2I Ai ) = inf i2I N (Ai ) ) N4 N (A [ ) = max( ; N (A)), if A is crisp where A\B (w) = min(A (w); B (w)) for all w 2 , and A [ denotes the fuzzy set de ned by the membership function A[ (w) = max( ; A (w)), for all w 2 .

Theorem 1 If N satis es the above postulates, then there exists  : ! [0; 1] such that N (A) = winf max(1 ? (w); A (w)): 2

5 Formalizing PLFC As already pointed out, in general our PLFC formulas will be pairs of the form ('(x); f (y)), where x (respec. y) denotes a set of variables xi (respec. yj ), for instance, (p(A; x) _ q(y); min( ; B (y); C (y))). The left-hand side of the pair '(x) is a disjunction of literals, possibly with free variables x and possibly with fuzzy constants. The right-hand side f (y), y  x, consists of a valuation function, de ned for a superset of the free variables in the left-hand side, denoting a (variable) lower bound for the necessity value of the formula of the left-hand side. In the next subsection we describe the language and semantics of the formulas appearing in the left-hand

side. We shall refer to them as base formulas, and their language, base language, denoted as PLFC . This is needed in the rest of the section where we de ne a possibilistic semantics of for PLFC clauses, rst with constant weight, and later with variable weight.

5.1 The base language PLFC : semantics The basic components of the language PLFC are: 1. sorts of variables (we will distinguish a basic sort  from its corresponding (fuzzy) extended sort f, see below); a type is a tuple of sorts; 2. a set X of object variables, a set C of object constants, and a set FC of fuzzy constants, each having its sort; furthermore a set FCcuts of imprecise constants corresponding to the -cuts of the fuzzy constants of FC : if A 2 FC , then [A] 2 FCcuts , for any 0   1. 3. a set Pred of regular predicates, each one having a type; type; 4. connectives : and _. Atomic formulas have the form p(x; :::; y) where p is a predicate from Pred, x; :::; y are variables, object or fuzzy constants and the sorts of x; :::; y correspond to the type of p. Literals are of the form p(x; :::; y) or :p(x; :::; y), where p is a predicate from Pred. Finally, Clauses are disjunctions of literals, either positive or negative. Free variables in a clause are implicitly universally quanti ed. For the sake of simplicity, functions are not dealt in the present framework. Next we de ne the semantics of PLFC, which, due to the presence of fuzzy constants, is many-valued, instead of boolean (two-valued).

De nition 1 (Interpretations) An interpretation w = (U; i; m) maps:

1. each basic sort  into a non-empty domain U and each extended sort f into the set F (U ) of fuzzy sets of U ; 2. a predicate p of type (1 ; : : : ; k ; fk+1 ; : : : ; fn ) into a crisp relation i(p)  U1  : : :  Un ; 3. an object constant c of sort  into a value m(c) 2 U , a fuzzy constant A of sort f into a (normalized) fuzzy set of m(A) 2 F (U ), and a cut [A] into the -cut of m(A). We will denote by m(:) the membership function of m(:). The value m(c) is also represented by fuzzy set, given by m(c) (m(c)) = 1, m(c)(u) = 0, 8u 2 U; u 6= m(c).

De nition 2 (Evaluation of variables) An evaluation of variables is a mapping e associating an element e(x) 2 U to each variable x of sort  or f.

De nition 3 (Truth evaluations of clauses) We rst de ne by cases the truth value of a clause under an interpretation w = (U; i; m) and an evaluation of variables e: 1. we (p(: : : ; x; : : : ; c)) = sup(:::;u;:::;v;:::)2i(p) min(: : : ; e(x) (u); : : : ; m(c) (v); : : :) 2. we (:p(: : : ; x; : : : ; c; :::)) = sup(:::;u;:::;v;:::)62i(p) min(: : : ; e(x) (u); : : : ; m(c) (v); : : :) 3. we (' _ ) = max(we ('); we ( )) Finally, the truth-value of clause under an interpretation w, is de ned as w(') = inf e we ('): It is clear that we (') may take any intermediate value between 0 and 1 as soon as ' contains some fuzzy constant. Moreover, notice that the negation in this semantics is not truth-functional.

Example 1 Let price(:; :) be a binary predicate of

type (1 ; f2 ), let prod1 , prod2 , prod3 be constants of type 1 and let about35 be a constant of type f2 . Further, let w0 = (U; i0; m) be an interpretation such that: 1. U = (U1 = fpotatoes; apples; saladg, U2 = [0; 100](ptas:)); 2. i0 (price) = f(potatoes; 40); (apples; 50); (salad; 25)g; 3. m(prod1 ) = potatoes, m(prod2 ) = apples, m(prod3 ) = salad, m(x) = x, for any x 2 [0; 100], m(about 35) = [25; 35; 35; 45]; Now consider the ground atom price(prod1 ; about 35). The truth evaluations in w0 of the corresponding positive and negative literals are: w0 (price(prod1 ; about 35)) = = sup(u;v)2i0 (price) min(m(prod1 ) (u); m(about 35) (v)) = min(m(prod1 ) (potatoes); m(about 35) (40)) = min(1; [25;35;35;45](40)) = 0:5: w0 (:price(prod1 ; about 35)) = = sup(u;v)62i0 (price) min(m(prod1 ) (u); m(about 35) (v)) = supx6=40 min(m(prod1) (potatoes); m(about 35) (x)) = min(1; [25;35;35;45](35)) = min(1; 1) = 1:

2

5.2 Possibilistic Semantics for PLFC: clauses with constant weights Let us consider PLFC clauses of the form ('; ), where 2 [0; 1]. Assume that ' contains fuzzy constants, for instance take ' to be p(A), where A is a fuzzy constant. In order to measure the certainty of p(A) in a possibilistic model, we need to assume that A has a

xed interpretation, in terms of its membership function, otherwise we would not be able to compute its necessity degree. Therefore, when de ning the possibilistic models as possibility distributions over interpretations, we cannot take into account any possible

interpretation, but only those which share a common and particular interpretation of the fuzzy constants, and hence they also have to share the domain. This leads us to the following notion of context.

De nition 4 (Context) Let U be a domain and let

m be an interpretation of object constants over U (or over [0; 1]U in the case of fuzzy constants). We further assume that U and m are such that m interprets each object (non-fuzzy) constant into a (di erent) element of the domain U . We de ne the context determined by U and m, denoted U;m , as the set

U;m = fw 2 j w = (U; i; m)g: Now we are ready to introduce the notion of possibilistic satisfaction in a context.

De nition 5 (Possibilistic satisfaction) Given a context U;m , and a possibility distribution  :

U;m ! [0; 1], we de ne:  j=U;m PLFC ('; ) i N (['] j  )  ,

Then N (price(prod1 ; about 35) j ) = = inf w2 U;m max(1 ? (w); w(price(prod1 ; about 35))) = min(0:6; 1; 0:5; 0:8; 1) = 0:5. Therefore, for instance, in the current context,  j= (price(prod1 ; about 35); 0:5) but  6j= (price(prod1 ; about 35); 0:6): 2 Some very interesting and remarkable consequences of the above de nition of possibilistic satisfaction are the following ones.

Proposition 1 In any context U;m, under general

continuity conditions3 of the interpretation of fuzzy constants, it holds that (i)  j= (p(A); ) i  j= (p([A] ); ). (ii)  j= (p(A; B ); ) i  j= (p([A] ; [B ] ); ). (iii)  j= (p(A)_q(B ); ) i  j= (p([A] )_q([B ] ); ). where p and q can be positive or negative literals, and [A] ; [B ] denote the imprecise constants corresponding to the -cuts of the fuzzy constants A and B .

N (['] j ) = w2inf max(1 ? (w); w(')):

These properties have important consequences since it means that in PLFC with (only) fuzzy constants we can in a way forget about fuzzy constants as such and focus only on imprecise but crisp constants.

When clear from the context, the subscript and superscript of j=U;m PLFC will be dropped.

5.3 Possibilistic semantics for PLFC: clauses with variable weights

where the extended necessity measure is de ned as U;m

Example 2 (Example 1 contd.) Consider the context

U;m where U and m are as in Example 1, consider the following predicate interpretation mappings i0 (price) = f(potatoes; 40); (apples; 50); (salad; 25)g i1 (price) = f(potatoes; 35); (apples; 45); (salad; 20)g i2 (price) = f(potatoes; 40); (apples; 55); (salad; 30)g i3 (price) = f(potatoes; 45); (apples; 50); (salad; 30)g and denote w0 = (U; i0; m); w1 = (U; i1 ; m); w2 = (U; i2 ; m); w3 = (U; i3 ; m). Finally, consider the following possibility distribution  on the context U;m :

8> 0:4; >< 1; (w) = > 0:6; >: 0:2; 0;

if w = w0 if w = w1 if w = w2 if w = w3 otherwise

Let us now compute how much  makes price(prod1; about 35) certain. Remember that m(about 35) = [25; 35; 35; 45], and thus we have: w0 (price(prod1 ; about 35)) = m(about 35) (40) = 0:5 w1 (price(prod1 ; about 35)) = m(about 35) (35) = 1 w2 (price(prod1 ; about 35)) = m(about 35) (40) = 0:5 w3 (price(prod1 ; about 35)) = m(about 35) (45) = 0

PLFC clauses with variable weight (see Section 3) are of the general form ('(x); f (y)) where '(x) is a PLFC clause with free variables x and f denotes a function with values on [0, 1] depending on a subset y of variables of x, in the sense that it becomes computable in a given context as soon as the variables y are instantiated. As an example, consider the general PLFC clause (p(A; x) _ q(y); min( ; B (x); C (y)); where A, B and C are fuzzy constants. But to be meaningful, rst of all, such a PLFC clause has to be understood under a particular context (U; m), where m provides meaning to the fuzzy constants by assigning them membership functions m(A) ; m(B) ; m(C ). Second, as already noted, free variables are assumed to be universally quanti ed. Thus, we shall understand the 3 It refers to the assumption that m interprets fuzzy con-

stants into left continuous membership functions. This is the case, for instance when using trapezoidal membership functions and their cuts.

above PLFC clause as the collection of instantiated clauses with constant weight f (p(A; c) _ q(d); min( ; B (c); C (d))) gc;d where c; d vary on the set of object constants (of the corresponding type), inducing on possibilistic models  the set of constraints4: N (p(A; c) _ q(d) j )  min( ; B (c); C (d)) Therefore, valuation functions f (y) will be basically either constant values, or membership functions of fuzzy sets, or max-min combinations of them, or necessity measures on them. We will refer to them as valid valuation functions.

De nition 6 Given a context U;m, and a possibility distribution  : U;m ! [0; 1], we de ne, for each each universally quanti ed clause ('(x); A(x)),  j=U;m x)) i , PLFC ('(x); A(U;m for each object constant c,  j=PLFC ('(c); A(c)). Standard possibilistic clauses ('(x); ), i.e. with a constant weight, can be considered as a special kind of variable weight clauses if we establish the convention of considering as a fuzzy set with constant membership function m( ) (u) = , for all u 2 U .

Proposition 2 In any context U;m, under general

continuity conditions of the interpretation of fuzzy constants, it holds that: (i) The clause (p(A; x); min( ; B (x))) is semantically equivalent to (p([A]min( ;B(x)) ; x); min( ; B (x))). (ii) The clause (p(A) _ r(x); min( ; B (x))) is semantically equivalent to (p([A]min( ;B(x))) _ r(x); min( ; B (x))). (iii) If  j= (p([A] ; x); min( ; B (x))) then  j= (p(A; x); min( ; B (x))).

6 Resolution and Refutation in PLFC The notion of possibilistic entailment in PLFC is de ned as in PL. Let K be a set of possibilistic clauses K = f( i ; fi ) j i = 1; ng. We say that K entails a possibilistic clause ('; f ) in a context U;m , written U;m ('; f ); K j= PLFC

if, for each possibility distribution  on U;m ,  j= ('; f ) whenever  j= ( i ; fi ), for all i = 1; n. From now on, we shall assume a particular context

U;m to be given, and thus, the notion of soundness For the sake of a simpler notation, and since a context

U;m will always be assumed, we will simply write, for instance, B (c); C (d) instead of m(B) (m(c)); m(C) (m(d)). 4

will be relative to the context. Furthermore, we shall assume that U;m provides interpretations of fuzzy constants ful lling the previously mentioned general continuity conditions. The fusion rule FR stated in Section 3 is obviously sound with respect of this notion of entailment, however this is not the case of the resolution-like rule RR. Instead, it can be shown that in PLFC the following General resolution rule holds: (:p(x; b; y) _ (x; y); min(A(x); B (y); )) (p(C; z; r) _ '(z; r); min(D(z ); E (r); )) [GR] ( (C; r) _ '(b; r); (r)) where (r) = min( ; ; B (r); E (r); D(b); N (Aj[C ]min(D(b);E(r); )))

Theorem 2 (Soundness of GR) The general resolution rule GR is sound with respect to the above de ned possibilistic entailment.

A couple of interesting cases of the resolution rule GR are: (:p(x) _ (x); min(A(x); )); (p(B ); ) [GR1 ] ( (B ); min(N (A j [B ] ); ; )) (:p(x) _ ; min(A(x); )) (p(y) _ '(z ); min(C (y); D(z ); )) [GR2 ] ( _ '(z ); min(A(x); C (x); D(z ); ; )) Notice that rule GR1 is the analog of the resolution rule RR of Section 3, but di ers from it in the term N (A j [B ] ), which in RR was N (A j B ). On the other hand, if we apply the fusion rule FR to the resolvent of GR2 , what we get is just ( _ '(z ); min(Pos(A j C ); D(z ); ; )), where Pos(A j C ) = supx min(A(x); C (x)). One of the main advantages of the present semantics for PLFC is that provides a sound refutation mechanism based on the following properties.

Theorem 3 (Refutation) (i) K [ f(:p(x); A(x))g j= (?; ) i K j= (p(A); ).

(ii) If A is an imprecise non-fuzzy constant: K [ f(:p(A); 1)g j= (?; ) i K j= (p(x); min( ; A(x))). (iii) If K [ f(:p(A>0 ); 1)g j= (?; ) then K j= (p(x); min( ; A(x))), where A>0 denotes the support of A, i.e. A>0 (c) = 1 if A (c) > 0, = 0 otherwise. (iv) If K [ f(:p(x; B>0 ); A(x))g j= (?; ) then K j= (p(A; x); min( ; B (x))). (v) If K [f(:p(x); A(x)); (:q(B>0 ); 1)g j= (?; ) then K j= (p(A) _ q(x); min( ; B (x))).

These soundness results will allow us to propose in the next section a refutation-based proof procedure checking whether a knowledge base K of PLFC clauses entails a given clause ('; f ). Since the complete speci cation of the required negation of a general query clause would be cumbersome, we just describe below four particular but illustrative cases. Namely, given a threshold , if we want to check whether the PLFC clauses: (i) (p(A); ), (ii) (p(x); min( ; B (x))), (iii) (p(A; x); min( ; B (x))), (iv) (:p(A; x) _ q(y; B ); min( ; C (x); D(y))) are derivable from a knowledge base K , we have to add, respectively, to K the following PLFC clauses : (i) (:p(x); A(x)) : (ii) (:p(B>0 ); 1) : (iii) (:p(x; B>0 ); A(x)) : (iv) f (p(x; C>0 ); A(x)); (:q(x; D>0 ); B (x)) g Now, Theorem 3 guarantees that if the augmented K with : (i) (resp. with : (ii), :(iii), : (iv)) derives (?; ), then (i) (resp. (ii), (iii), (iv)) is a logical consequence of K . However, nothing is said about the converse.

7 Automated Deduction in PLFC In this section we de ne an automated deduction method for PLFC based on refutation through the resolution rule GR of last section, the fusion rule FR already proposed in [3] and introduced in Section 3, and a new generalized merging rule described bellow. We then need an algorithm that let us know when two literals p and :p can be resolved. Moreover, we need an algorithm that automatically computes the set of substitutions that must be applied on the resolvent clause. But in this framework we cannot borrow the uni cation concept used in classical logic. Let us consider one illustrative example. For instance, from s1: (:p(A) _ ; 1) and s2: (p(A); 1), which, if A is not fuzzy, are interpreted resp. as \(9x 2 A; :p(x)) _ ", 9x 2 A; p(x)", we can infer i A is a precise constant. Then, the substitution algorithm for :p(A) and p(A) must fail unless A is a precise constant, even though, obviously, p(A) = p(A) for any substitution . Therefore, from now on, we will refer ourselves to the most general substitution of two literals in a resolution step (or mgs for short). The rst part of this section is about the formalization and computation of the mgs, while the second one extends the calculus of the logic with a generalized merging rule, and the last one describes

the proof procedure by refutation.

7.1 Most General Substitution In the following we formally de ne the mgs of two literals, we describe how it must be applied to a PLFC clause and, nally, we give an algorithm for its automatic computation.

De nition 7 (substitution terms) A substitution term of a variable is a variable, a precise constant or an imprecise non-fuzzy constant5 . De nition 8 (substitution) A substitution is a nite mapping from variables to substitution terms, and is written as  = fx1 =t1 ; :::; xn =tng, where the variables x1 ; :::; xn are di erent and xi 6 ti , for i = 1; n. Substitutions operate on expressions. By an expression we mean a term or a possibilistic clause with a constant or a variable weight. For an expression E and a substitution , E stands for the result of applying  to E which is obtained by simultaneously replacing each occurrence in E of a variable from the domain of  by the corresponding substitution term. After applying a substitution to a possibilistic clause we can obtain in the valuation side expressions like f1 (B ) or f2 (B1 ; : : : ; Bn ) being f1 and f2 valid valuation functions in the model and B; B1 ; : : : ; Bn imprecise nonfuzzy constants. Then, f1 (B ) is computed as N (f1 j B ) = inf x max(1 ? B (x); f1 (x)) and f2 (B1 ; : : : ; Bn ) as N (f2 j min(B1 ; : : : ; Bn )) = inf x1 :::xn max(1 ? B1 (x1 ); : : : ; 1 ? Bn (xn ); f2 (x1 ; : : : ; xn )). Substitutions can be composed. Given two substitutions  = fx1 =t1 ; :::; xn =tn g,  = fy1 =s1; :::; ym =smg their composition  is de ned by removing from the set fx1 =t1; :::; xn =tn ; y1 =s1 ; :::; ym=sm g those pairs xi =ti  for which xi  ti  and those pairs yi =si for which yi 2 fx1 ; :::; xn g. We say that a substitution  is more general than a substitution  if for some substitution we have  =  . The next algorithm takes two PLFC literals and produces their most general substitution if they can be resolved, otherwise reports an error message. We will follow the presentation of Apt [1], based upon Herbrand's original algorithm, rst presented by Martelli and Montanari [4], which deals with solutions of nite sets of term equations.

Algorithm 1 (most general substitution)

Input: Two literals with predicate symbol p of arity n of the form :p(s1 ; :::; sn ) and p(t1 ; :::; tn ), respectively, 5 Notice that fuzzy constants are not substitution terms. This is due to Proposition 1 and 2 which safely allow us to focus only on crisp constants.

and such that they do not have any variable in common. Output: The mgs  if they can be resolved, and otherwise, an error message. Initialization: From the pair of literals :p(s1 ; :::; sn ) and p(t1 ; :::; tn ) we construct a set of substitutions S of the form fs1=t1 ; :::; sn =tn g. Method: Choose any substitution fsi =ti g and perform the associated action until either S remains unchanged or the algorithm fails: 1. If si and ti are object constants, then  if 8x 2 si (x) = ti (x) and si ; ti are precise constants then, delete the substitution fsi =ti g from S ;

 otherwise, fail. 2. If si is an object constant and ti is a variable, then replace fsi =ti g by fti =si g in S . 3. If si is a variable, then  if si  ti then delete the substitution fsi =ti g from S ;  else, if si has another occurrence in S , then { if si appears in ti , then fail; { otherwise, perform the substitution fsi =ti g in every other term in S . Final treatment: If fs01 =t01 ; :::; s0k =t0k )g is the resulting set of substitutions, then :=fs01 =t01 ; :::; s0k =t0k g. 2

Example 3 Consider the following PLFC clauses: s1: (:p(x; b) _ (x); min(A(x); ))

s2: (p(C; y); min(D(y); )) By Proposition 2, s2 is equivalent to: s2': (p([C ]f1 (y) ; y); f1(y)) where f1 (y) = min(D(y); ). Hence, the output of the algorithm for :p(x; b) and p([C ]f1 (y) ; y) is the mgs  = fx=[C ]f (b) ; y=bg, and, nally, applying  to \preresolvent" of s1 and s2, s3: ( (x); min(A(x); ; D(y); )), we get s3': ( ([C ]f (b) ); min(A([C ]f (b) ); ; D(b); )), where, A([C ]f (b) ) = N (A j [C ]f (b) ) and D(b) = N (D j b) = D (b). Note that, by Proposition 2, s3' is equivalent to ( (C ); min(A([C ]f (b) ); ; D(b); )); which is exactly the resolvent of s1 and s2 when applying the GR rule. Now, replace the precise constant b by a fuzzy constant B in s1, we get: s4: (:p(x; B ) _ (x); min(A(x); )) By Proposition 2, s4 is equivalent to s4': (:p(x; [B ]f2 (x) ) _ (x); f2 (x)) where f2(x) = min(A(x); )). The set of substitutions for :p(x; [B ]f2 (x) ) and (p([C ]f1 (y) ; y) is

S = fx=[C ]f1 (y) ; y=[B ]f2 (x) g. Choosing substitution fx=[C ]f1 (y)g we have that the variable x has another occurrence in S , then S = fx=[C ]f1 (y) ; y=[B ]f2 (f1 (y))g. Taking fy=[B ]f2 (f1 (y))g, variable y has another occurrence in S such that the substitution term of y depends on y itself. Therefore, the algorithm halts with failure in this case. 2

7.2 Generalized Merging Rule Before developing the refutation procedure, we must stress that in PLFC an extension of the PL merging rule holds. Let us rst introduce two new de nitions about substitutions.

De nition 9 (renaming) A substitution of the form

 = fx1 =t1; :::; xn =tn g is a renaming i t1 ; : : : ; tn are di erent variables.

De nition 10 (variant) Let E1 = ('(x); f1(x)) and E2 = ('(y); f2 (y)) be two PLFC formulas. We say that E1 is a variant of E2 i exists a renaming  such that no variable of E1 omitted in the domain of  appears in the range of  and '(x)  '(y). The following Generalized Merging Rule is an extension of the one proposed in [6] and it corresponds to the following pattern: ('(x); f1 (x)); ('(y ); f2 (y)) [GM ] ('(y); max(f1 (x); f2 (y))) where  is a renaming such that ('(x); f1 (x)) is a variant of ('(y ); f2 (y)), and f1 (x) and f2 (y) are valid valuations functions. It can be proved that this rule is sound, but we can show more.

Proposition 3

If  is a renaming such that ('(x); f1 (x)) is a variant of ('(y ); f2 (y)), then the set of PLFC clauses f('(x); f1 (x)); ('(y ); f2 (y))g is semantically equivalent to the PLFC clause ('(y); max(f1 (x); f2 (y))).

The usefulness of this rule can be veri ed by means of a simple example. Let A = f1; 2g; B = f2; 3g and C = f1; 2; 3g. Let us suppose we have s1: (p(x); A(x)), s2: (p(y); B (y)), s3: (:p(C ); 1) Resolving s1 and s3 yields (?; 0), which is the same result we obtain when we resolve s2 and s3. Therefore, without the use of the merging rule, we only obtain (?; 0) as nal result. However, s1 is a variant of s2 and, thus, if s1 and s2 are fused together we obtain (p(y); f (y)), with f (y) = max(A(y); B (y)), which resolved with s3 nally yields (?; f ([C ]1 )), where f ([C ]1 ) = N (max(A; B ) j [C ]1 ) = inf y max(1 ? [C ]1 (y); A (y); B (y)) = 1.

7.3 Refutation procedure The proof procedure implements a proof by refutation through the resolution rule GR, by constructing the most general substitution of two literals in every resolution step, applying, if necessary, the fusion rule FR to the resolvent clause and, nally, merging variant clauses through the merging rule MR. Let K be a knowledge base formed by PLFC clauses, ' a PLFC clause and a threshold. In order to verify if K entails ' with a necessity of at least , we apply the proof procedure algorithm described next: function RefutationProcedure(K : SetPLFCclauses, ': PLFCclause, : NecessityDegree) : boolean var RL: SetPLFCliterals /* set of resolved literals */ K := K [ Negation('); K := Fusion(K ); K := Threshold(K , ); K := Merging(K ); K := Equivalent(K ); RL:= ;; return(ProofProcedure(K , , RL)) end RefutationProcedure

where function Negation returns the set of clauses obtained by negating the clause ' as stated in Theorem 6; function Fusion applies the fusion rule FR to those clauses of K such that some variable appear in the valuation side but not in the base formula; function Threshold eliminates from K the clauses such that the valuation function cannot be evaluated to a value  ; function Merging applies the generalized merging rule GM over the knowledge base; and nally, function Equivalent transforms, following Proposition 1 and 2, all fuzzy constants present in base formulas of K into imprecise non-fuzzy constants. During the refutation process the GM rule must be applied after every resolution step (see example in last subsection). Therefore, the proof procedure cannot be oriented to a resolvent clause and thus the search space consists of all possible orderings of the literals in the knowledge base. Moreover, for every resolution step the proof procedure is based on chronological backtracking and the search strategy is depth- rst. function ProofProcedure (K : SetPLFCclauses, : NecessityDegree, RL: SetPLFCliterals): boolean variables

C1 , C2 , C : PLFCclause L1 , L2 : PLFCliteral : mgs RL : SetPLFCliterals K : SetPLFCclauses 0

0

end variables if ((?; ) 2 K and  ) then return(true) else

for each clause C1 2 K do for each literal L1 2 C1 such that L1 62 RL do

/* assume that C1 has the general form (' _ L1 ; f1 ), where f1 is a valid valuation in the model */ for each clause C2 2 K do for each literal L2 2 C2 do /* assume that C2 has the general form ( _ L2 ; f2 ), where f2 is a valid valuation in the model */ if ( = mgs(L1 ; L2 ) and  6= fail) then if (min(f1 ; f2 )  ) then /* even some of the variables in f1 or f2 have not been instantiated, the expression min(f1 ; f2 )  fails as soon as f1 or f2 cannot be evaluated to a value  */ C := Fusion r(((' _ ); min(f1 ; f2 ))); K := Merging(K [ fC g); RL := RL [ fL1 g; if (ProofProcedure(K , , RL )) then return(true); 0

0

0

0

end if end for C1 return(false); end else end ProofProcedure

where the function Fusion r applies, if necessary, the FR rule to the resolvent clause of C1 and C2 .

Proposition 4 Given a particular context U;m, the notion of proof in PLFC by refutation using the GR, FR and GM rules, written `rPLFC , is sound wrt the PLFC semantics, that is, if ? `rPLFC ('; ) then ? j=PLFC ('; ).

8 Future Work Future work will be addressed in three main directions. First, the extension of the base language to allow computable functions, needed f.i. in PLFC for modeling temporal resoning [6]. Second, we aim at extending the current inference system (which is obviously not complete) that would allow us to have a sound and complete entailment in PLFC. And the last one concerns the time complexity of the proof procedure algorithm. As we have stated, the algorithm explores all possible resolvents from the knowledge base. So, it would be interesting to nd some resolution re nement in order to reduce the branching factor for the search tree. In particular, it would be nice to check for subsumed literals in a PLFC clause.

References [1] K.R. Apt. Logic programming. In Jan Van Leeuwen, editor, Handbook of Theoretical Computer Science, volume B, chapter 10. Elsevier, 1990.

[2] D. Dubois, J. Lang, and H. Prade. Possibilistic logic. In D.M. Gabay et al. editors, Handbook of Logic in Arti cial Intelligence and Logic Programming, Vol. 3, pp. 439{513. Oxford U. Press, 1994. [3] D. Dubois, H. Prade, and S. Sandri. Possibilistic logic with fuzzy constants and fuzzy quanti ers. In F. Arcelli and T.P. Martin, editors, Logic Programming and Soft Computing, pages 69{90. Wiley, 1998. [4] A. Martelli and U. Montanari. An ecient uni cation algorithm. ACM Trans. on Programming Languages and Systems, 4(2):258{282, 1982. [5] M. Mukaidono, Z. Shen and L. Ding. Fundamentals of fuzzy prolog. International Journal of Aproximate Reasoning, 3:179{193, 1989. [6] S. Sandri and L. Godo. Treatment of temporal information in possibilistic logic with fuzzy constants. To appear in Proc. IFSA'99, 1999.

Appendix: Proofs Theorem 1 If N satis es the above postulates, then there exists  : ! [0; 1] such that N (A) = winf max(1 ? (w); A (w)): 2

Proof: Let A be an arbitrary fuzzy subset of . De ne (w) = 1 ? N (fwg). Since A can be put as

A = \w2 ffwg [ A (w)g; by N3, we have N (A) = inf w2 N (fwg [ A (w)); but, by N4, N (fwg [ A (w)) = max(A (w); N (fwg). Hence,

N (A) = winf max(A (w); N (fwg); 2

that is, N (A) = inf w2 max(1 ? (w); A (w)).

2

Notation remark: for the sake of a simpler notation, since in what follows we are assuming a given context

U;m , we shall simply write everywhere A(c) instead of m(A)(m(c)).

Proposition 1 In any context U;m, under general

continuity conditions of the interpretation of fuzzy constants, it holds that (i)  j= (p(A); ) i  j= (p([A] ); ). (ii)  j= (p(A; B ); ) i  j= (p([A] ; [B ] ); ). (iii)  j= (p(A)_q(B ); ) i  j= (p([A] )_q([B ] ); ). where p and q can be positive or negative literals. Proof: (i) According to the de nition,  j= (p(A); ) i , for each w,

(w)  max(1 ? ; [w(p(A))] );

where [w(p(A))] = 1 if w(p(A))  ; [w(p(A))] = 0, otherwise. But w(p(A)) = supc2i(p) A(c). Now, assuming a continuity condition on m(A) , from w(p(A))  , we can infer that there exists c 2 i(p) such that A(c)  . Then we have w(p(A))  i there exists c such that c 2 [A] , hence i w(p([A] )) = 1. (ii) It easily follows from (i) by noticing that, under the continuity condition, w(p(A; B ))  i there exists (c1 ; c2 ) 2 i(p) such that A(c1 ); B (c2 )  . (iii) It follows from (i) as well as due to the fact that [w(p(A) _ q(B ))] = max([w(p(A))] ; [w(q(B ))] ). 2

Proposition 2 In any context U;m, under general

continuity conditions of the interpretation of fuzzy constants, it holds that: (i) The clause (p(A; x); min( ; B (x))) is semantically equivalent to (p([A]min( ;B(x)) ; x); min( ; B (x))). (ii) The clause (p(A) _ r(x); min( ; B (x))) is semantically equivalent to (p([A]min( ;B(x))) _ r(x); min( ; B (x))). (iii) If  j= (p([A] ; x); min( ; B (x))) then  j= (p(A; x); min( ; B (x))). Proof: (i) Direct consequence of (ii) of Proposition 1. (ii) Again it is an easy consequence of Proposition 1, taking into account that, for each c, w(p(A) _ r(c)) = max(w(p(A)); w(r(c))). (iii) It follows from (i) by noticing that [A]  [A]min( ;B(c)) for each object constant c. 2

Theorem 2 (Soundness of GR) The general resolution rule GR is sound with respect to the above de ned possibilistic entailment. Proof: We want to show that if  j= (:p(x; b; y) _ (x; y); min(A(x); B (y); )) and  j= (p(C; z; r) _ '(z; r); min(D(z ); E (r); )), then  j= ( (C; r) _ '(b; r); (r; ; )), where (r; ; ) = min(B (r); E (r); D(b); N (Aj[C ]min(D(b);E(r); )); ; ). Therefore suppose that

max(1 ? (w); 1 ? w(p(c1 ; b; c2 )); w( (c1 ; c2 )))  min(A(c1 ); B (c2 ); ), for all c1 2 UA;C , c2 2 UB;E and for all w in , and that max(1 ? (w); w(p(C; b0 ; c2 )); w('(b0 ; c2 )))  min(D(b0 ); E (c2 ); ); for all b0 2 UD , c2 2 UB;E and for all w in . Taking b0 = b and if w = (U; i; m), w(p(C; b; c2 )) = sup(u;b;c2 )2i(p) C (u) for all c2 2 UB;E . Now,

 if w(p(C; b; c2 )) < min(D(b); E (c2 ); ) then max(1 ? (w); w('(b; c2 ))  min(D(b); E (c2 ); ): Thus, max(1 ? (w); w( (b; c2 )); w('(b; c2 )))  min(B (c2 ); E (c2 ); D(b); N (Aj[C ]min(D(b);E(c2 ); ) ); ; ); for all c2 2 UB;E such that w(p(C; b; c2 ))
0 ); 1)g j= (?; ) then K j= (p(x); min( ; A(x))), where A>0 denotes the support of A, i.e. A>0 (c) = 1 if A(c) > 0, = 0 otherwise. (iv) If K [ f(:p(x; B>0 ); A(x))g j= (?; ) then K j= (p(A; x); min( ; B (x))). (v) If K [f(:p(x); A(x)); (:q(B>0 ); 1)g j= (?; ) then K j= (p(A) _ q(x); min( ; B (x))).

min(D(b); E (c2 ); ).  if w(p(C; b; c2 ))  min(D(b); E (c2 ); ) and we assume general continuity conditions of the inter- Proof: (i) !). Suppose  j= K and  j= pretation of fuzzy constants, we can infer that (:p(x); A(x)). This means that  j= (:p(c); A(c)) there must exist (c1 ; b; c2 ) 2 i(p) such that for each c 2 U , hence, for each w of the form w(p(C; b; c2 )) = sup(u;b;c2 )2i(p) C (u) = C (c1 ). w = (U; i; m), max(1 ? (w); 1 ? w(p(c)))  Thus, C (c1 )  min(D(b); E (c2 ); ), i.e. c1 2 A(c), or equivalently 1 ? (w)  A(c), for [C ]min(D(b);E(c2 ); ) and w(p(c1 ; b; c2 )) = 1. When each m(c) 2 U such that m(c) 2 i(p), that w(p(c1 ; b; c2 )) = 1 the rst constraint turns into is, 1 ? (w)  supm(c)2i(p) A(c). Now, if this condition has to imply that  j= (?; ), i.e., max(1?(w); w( (c1 ; c2 )))  min(A(c1 ); B (c2 ); ): 1 ? (w)  for each w, it must be that 1 ? (w)  max( ; supm(c)2i(p) A(c)) for each w, Now, which is equivalent to force that  j= (p(A); ). { if (c1 ; c2) 2 i( ), then ). Suppose now that  j= (p(A); ) and that moreover  j= K and  j= (:p(x); A(x)). w( (C; c2 )) = sup(u;c2 )2i( ) C (u) = Analogously to above, this means that, max(1 ? max(C (c1 ); sup(u;c2 )2i( )ju6=c1 C (u))  (w); w(p(A)))  . Therefore, if w(p(A)) < min(D(b); E (c2 ); ), it must be 1 ? (w)  > supm(c)2i(p) A(c). which implies that If w(p(A))  , by general continuity condimax(1 ? (w); w( (b; c2 )); w('(b; c2 )))  tions, it must exist c shuch that m(c) 2 i(p) min(D(b); E (c2 ); ). and A(c)  , hence, w(p(c)) = 1. Thus, { if (c1 ; c2) 62 i( ), then 1 ? (w)  max(1?(w); 1?w(p(c))) = 1?(w)  A(c)  . min(A(c1 ); B (c2 ); ). We know that c1 2 Therefore, in both cases it holds that  j= (?; ). [C ]min(D(b);E(c2 ); ) , then (ii) Let A be an imprecise non-fuzzy constant, i.e. A(c1 )  inf c2[C ]min(D(b);E(c2 ); ) A(c) A(c) 2 f0; 1g for all c 2 U . Assume  j= K . = N (Aj[C ]min(D(b);E(r); )): Now,  j= (:p(A); 1) i (w) = 0 for all those w Thus, 1 ? (w)  min(A(c1 ); B (c2 ); )  such that w(:p(A)) = 0, that is, for all those w min(N (Aj[C ]min(D(b);E(r); )); B (c2 ); ), such that w(p(c)) = 1 for all c 2 m(A). Thus, this which implies that condition implies  j= (?; ) (i.e. (w)  1 ? max(1 ? (w); w( (b; c2 )); w('(b; c2 )))  for all w) i one has (w)  1 ? for all those min(N (Aj[C ]min(D(b);E(r); )); B (c2 ); ). w such that there exists c 2 A with w(p(c)) = 0. But this is exactly the condition for having Merging both constraints we  j= (p(x); min( ; A(x))), namely, for all c 2 A, get that max(1 ? (w); w( (b; c2 )); w('(b; c2 )))  max(1 ? (w); w(p(c)))  , i.e., 1 ? (w)  if min(B (c2 ); E (c2 ); D(b); N (Aj[C ]min(D(b);E(c2 ); ) ); there exists c 2 A such that w(p(c)) = 0. ; ), for all c2 2 UB;E such that w(p(C; b; c2 ))  min(D(b); E (c2 ); ). (iii) It is a direct consequence of (ii), taking into account that A>0 (c)  A(c) for all c. Then, max(1 ? (w); w( (b; c2 )); w('(b; c2 )))  min(B (c2 ); E (c2 ); D(b); N (Aj[C ]min(D(b);E(c2 ); ) ); ; ); (iv) It is a consequence of (i) and (iii). for all c2 2 UB;E , hence we have showed (v) Again it is an easy consequence of (i) and (iii), that  j= ( (C; r) _ '(b; r); min(B (r); E (r); D(b); taking into account that, for each c, w(p(A) _ N (Aj[C ]min(D(b);E(r); )); ; )) as desired. 2 q(c)) = max(w(p(A)); w(q(c))).

Theorem 3 (Refutation) (i) K [ f(:p(x); A(x))g j= (?; ) i K j= (p(A); ). (ii) If A is an imprecise non-fuzzy constant: K [ f(:p(A); 1)g j= (?; ) i K j= (p(x); min( ; A(x))).

2

Proposition 3

If  is a renaming such that ('(x); f1 (x)) is a variant of ('(y ); f2 (y)), then the set of PLFC clauses

f('(x); f1 (x)); ('(y ); f2 (y))g is semantically equivalent to the PLFC clause ('(y); max(f1 (x); f2 (y))). Proof: If  is a renaming then,  j= ('(x); f1 (x)) i  j= ('(x); f1 (x)) i  j= ('(x); f1 (x)) i  j= ('(y ); f1 (x)). Now,  j= f('(y); f1 (x)); ('(y ); f2 (y))g i max(1 ? (w); w('(y )))  max(f1 (x); f2 (y)) for all w in . Thus, i  j= ('(y)); max(f1 (x); f2 (y))). 2

Proposition 4 Given a particular context U;m, the notion of proof in PLFC by refutation using the GR, FR and GM rules, written `rPLFC , is sound wrt the PLFC semantics, that is, if ? `rPLFC ('; ) then ? j=PLFC ('; ). Proof: Direct consequence of the soundness of refutation in PLFC and the soundness of the GR, FR and GM rules. 2