Application Center - Maplesoft

# Polynomizing Lukasiewicz's Many-Valued Logics by Maple

You can switch back to the summary page by clicking here.

 >

Polynomizing Lukasiewicz's Many-Valued Logics by Maple

Kahtan H. Alzubaidy

Introduction

Polynomizing of Lukasiewicz's Many-Valued Logics

by certain reduced polynomials of several variables over the ring

This method is applicable when  n is a prime or a power of a prime. We shall restrict ourselves to n = 2, 3, 4 only.

Numerical representations

Propositional Lukasiewicz's many valued logics can be introduced by the matrix

Suppose that  n is a prime.Then  connectives are expressed by the numeric functions.

negation(ne)      wx = n-1- x

implication(im)   x

disjunction(di)    x

conjunction(co)  x

biconditional(bi) x

For

 >
 >
 (1)
 >
 (2)
 >
 (3)
 >
 (4)
 >
 (5)

For

 >
 (6)
 >
 (7)
 >
 (8)
 >
 (9)
 >
 (10)
 >

Representations by polynomials

Let n be a prime.

Any polynomial  p in

Special cases

In

p(x)=a

p(x,y)=axy+bx+cy+d

In

p(x)=a

p(x,y)=a

Atomic proposition in

In

the unary onnective x= ax+b ;  a,b

the binary connectives

the unary onnective x= a ;  a,b

the binary connectives  a ;

To find now the connectives

 >
 >
 >
 (11)
 > conn2:=proc(ff)
 > local DS2,Eq2;
 > DS2 := [seq(seq([i, j], i = 0 .. 1), j = 0 .. 1)];
 > Eq2 := [seq(p2(u[])-ff(u[]), `in`(u, DS2))];
 > modp(Linear(Eq2, [a, b, c, d]),2);
 > end proc;
 (12)
 >
 (13)
 >
 (14)
 >
 (15)
 >
 (16)

Thus the connectives in

wx = 1+x

x

x

x

x

In terms of polynomial functions

 >
 (17)
 >
 (18)
 >
 (19)
 >
 (20)
 >
 (21)
 >
 >
 (22)
 > conn3:=proc(ff)
 > local DS3,Eq3;
 > DS3 := [seq(seq([i, j], i = 0 .. 2), j = 0 .. 2)];
 > Eq3:= [seq(p3(u[])-ff(u[]), `in`(u, DS3))];
 > `mod`(Linear(Eq3, [a, b, c, d,e,f,g,h,k]), 3);
 > end proc;
 (23)
 >
 >
 (24)
 >
 (25)
 >
 (26)
 >
 (27)
 >

Therefore the connectives in

wx =

x

x

x

x

In terms of polynomial functions

 >
 (28)
 >
 (29)
 >
 (30)
 >
 (31)
 >
 (32)

Checking tautologies

The following procedure based on Groebner basis can compute compound proposition as a reduced polynomial  in

The proposition is a tautolog if the result is  1 for

In the following procedure  ev (evaluate).

p = 2, 3 primes

V is the list of variables x,y,z,...

q is the proposition as a polynomial in x, y, z, ...

 >

 > ev:=proc(p,V,q)
 > local n,W,K,B;
 > n:=nops(V);
 > W:=[seq(V[i],i=1..n)];
 >
 > K:=[seq(x^p-x,x in W)];
 >
 > B:=Basis(K,tdeg(seq(V[i],i=1..n)));
 > modp(NormalForm(q,B,tdeg(seq(V[i],i=1..n))),p);
 >
 > end proc;
 (33)
 >

1) x→(y→x)

2) (x→(y→z)→((x→y)→(x→z))

3) (wx→wy)→(y→x)

To verify the second axiom for example. The other two axioms are similar.

 >
 (34)
 >
 (35)
 >
 (36)
 >

1) x→(y→x)

2) (x→y)→((y→z)→(x→z))

3) (wx→wy)→(y→x)

4) ((x→wx )→x)→x

To verify the  fourth axiom. The rest are similar.

 >
 (37)
 >
 (38)
 >
 >
 (39)

4-valued Logic

The truth values of  propositional Lukasiewicz's 4- valued logic

GF(4)=

Minimum and maximum functions on GF(4) are given by the following two proceddures.

 > m:=proc(u,v)
 > local r;
 > r:=min(u,v);
 > r:=eval(subs(t=2,r));
 > subs(2=t,3=t+1,r);
 > end proc;
 >
 (40)
 > M:=proc(u,v)
 > local r;
 > r:=max(u,v);
 > r:=eval(subs(t=2,r));
 > subs(2=t,3=t+1,r);
 > end proc;
 >
 (41)
 >
 (42)
 >
 (43)

The order on GF(4) is therefore given by   0 < 1 < t < t+1 .

The connectives are given by the following functions

 >
 (44)
 >
 (45)
 >
 (46)
 >
 (47)
 >
 (48)
 >

Consider the following lists

 >
 (49)
 >
 (50)
 >
 >
 (51)
 >
 >

The reduced polynomial when n = 4

 >
 (52)

 > conn4:=proc(ff)
 > local DS4,Eq4;
 > DS4 := [seq(seq([i, j], `in`(i, L4)), `in`(j, L4))];
 > Eq4:= [seq(p4(u[])-ff(u[]), `in`(u, DS4))];
 > `mod`(Linear(Eq4, CC), 2);
 > end proc;
 (53)
 >

The connectives

 >
 (54)
 >
 >
 (55)
 >
 (56)
 >
 (57)
 >

Connectives in terms of  polynomials

 >

 >
 (58)
 >
 (59)
 >
 (60)
 >
 (61)
 >
 (62)

The following procedure evaluate compound propositions in terms of reduced polynomials  in

p = 2 and V, q as above in ev.

 > ev4:=proc(p,V,q)
 > local n,W,K,B;
 > n:=nops(V);
 > W:=[seq(V[i],i=1..n)];
 >
 > K:=[seq(x^(2*p)-x,x in W)];
 >
 > B:=Basis(K,tdeg(seq(V[i],i=1..n)));
 > modp(NormalForm(q,B,tdeg(seq(V[i],i=1..n))),p);
 >
 > end proc;
 (63)
 >

Checking tautologies in

The above proceduer ev4  can be used to check tautologies in

Examples

1) x →x

 >
 (64)
 >
 (65)

2) x→(y→x)

 >
 (66)
 >
 (67)
 >

3) xnwx  is not tautology in

 >
 (68)
 >
 (69)
 >

Remark

We can deduce from → the other connectives  n,o,↔ .

For example   xny = (x→y)→y

 >
 (70)
 >
 >
 (71)
 >
 (72)
 >
 (73)
 >

References

1) M. Bergmann

Many-Valued and Fuzzy Logic

Cambridge 2008.

2) Walter Carnielli

Polynomial Ring Calculus for Many-Valued Logics

Proceedings of the 35th International Symposium on Multiple-Valued Logic (ISMVL’05)