comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: fuzzy logic
Date: Tue, 23 Aug 2005 17:45:49 +0200
Date: 2005-08-23T17:45:49+02:00	[thread overview]
Message-ID: <1wzvbtxj3rqfd.1s3f8bbyhoba4.dlg@40tude.net> (raw)
In-Reply-To: 1124803398.655387.185810@g44g2000cwa.googlegroups.com

On 23 Aug 2005 06:23:18 -0700, Craig Carey <research@ijs.co.nz> wrote:

> On Tue, 16 Aug 2005 15:03:41 +0200, "Dmitry A. Kazakov" wrote:
>>On Tue, 16 Aug 2005 13:46:37 +0200, Poul-Erik Andreasen wrote:
>>> ...source-code examples of the use of Dmitry A. Kazakov's  fuzzy-logic
>>> library?.
> ...
>>P.S. If that is not directly related to Ada, then comp.ai.fuzzy is a better
>>place to discuss it. Or write me (E-mail is on the page.)
> 
> A tall rectangle can fit inside of a smaller square, providing that the
> former has no volume and isn't even a line. It seems plausible to
> replace real numbers (used in science, etc.) with 'fuzzy logic' polytopes, but
> idea seems to too flawed to make it.

Do you mean fuzzy numbers or something else?

> Suppose Booleans are replaced with non-negative reals, and 'and' means
>  'Max', and 'or' is 'Min'

I presume you meant and = min, or = max.

> This:
> 
>    4 and (2*(0<x) or 3*(0<y));

This is a rather flawed notation that mixes values and sets. What is 4?

1. A number 4 of R

2. A 1D singleton {x | x=4}

3. A 2D singleton {(x,y) | x=4 }

And what is 2*(0<x)?

> would simplify to this:
> 
>    2*(0<x) or 3*(0<y);

> since the second term takes values in the range 0 to 3, and that is
> smaller than 4.
>
> So maybe to implement simplifying, subexpressions would be recursed
> over, and the upper and lower values would be computed.

I cannot tell if I understood the question, because I don't grasp your
notation. But talking about fuzzy logic, fuzzy Booleans form a lattice with
de Morgan's laws. That can be used for simplifying. 

> Let "implies" mean that one polytope fits inside of another.
> E.g. simplify "P implies Q" where P and Q are rectanges:
> 
>    Tall rectangle: P = (0<y<10)(1<x<1)  [empty]
>    Short square:   Q = (0<y<3)(0<x<2)
> 
> To simplify  "a*F implies b*G",  could make the answer be
>      (a<=b) and (All ...)(F implies G)

That's not fuzzy, but sloppy logic. (:-))

> Substituting in from the example: a=10, F=(1<x<1), b=3, G=(0<x<2)
> Then the algorithm finds that P is not inside of Q since not (10<=3).
> 
> So that algorithm is wrong.

Yes, but it has nothing to do with fuzzy logic. Reasoning about geometric
shapes is crisp as long as the predicates involved are crisp.

Fuzzy logic does not add anything to our knowledge of the geometry. Wrong
statements about shapes remain wrong in any logic.

> It certainly seems that the best way to proceed is to throw away
> fuzzy logic and for the relatively infrequent cases when it is needed,
> an extra variable (the "y" above), can be used.

See above. Fuzzy logic has any sense only if 1) the data you are working
with or 2) the knowledge of what's going on are incomplete, contradictory
etc. That adds *nothing*. Fuzzy is not a god's oracle. It only allows you
to proceed further in the hope that unknown things will not blur the answer
you need. These unknown things (fuzziness) will stay unknown all the way!
Yet note that on each step of reasoning, each answer a feasible fuzzy
system gives is *correct*. It might end up with "I don't know", but it
cannot derive falsehood from truth.

> 'Not' need not be defined (it could be that 'Not x' equals 1-x or x<1).
> 
> 
> I just deleted Zadeh Booleans (fuzzy logic) from my symbolic algebra
> code. It seems that classical logic seems better despite how
> non-negatives are a convenient extrapolation (a use of an extrapolating principle
> that almost opposes itself in this topic).

I don't see why you even tried to apply fuzzy to symbolic algebra! Remember
two questions above:

1. Are data fuzzy?
= somebody short-sighted guesses about what are the components of a formula
shown on the display.

2. Are the laws fuzzy?
= somebody was too lazy to take a look into a handbook of elementary
mathematics.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de



  reply	other threads:[~2005-08-23 15:45 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-08-16 11:46 fuzzy logic Poul-Erik Andreasen
2005-08-16 13:03 ` Dmitry A. Kazakov
2005-08-16 13:42   ` Poul-Erik Andreasen
2005-08-23 13:23   ` Craig Carey <research@ijs.co.nz>
2005-08-23 15:45     ` Dmitry A. Kazakov [this message]
2005-08-23 16:56       ` Craig Carey <research@ijs.co.nz>
2005-08-24  8:01         ` Dmitry A. Kazakov
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox