Exotic Logics

William Clifford mr.william.clifford at gmail.com
Wed Jun 17 15:05:00 EDT 2009

On Jun 17, 1:28 am, Steven D'Aprano
<ste... at REMOVE.THIS.cybersource.com.au> wrote:
> On Tue, 16 Jun 2009 22:46:14 -0700, William Clifford wrote:
> > I was staring at a logic table the other day, and I asked myself, "what
> > if one wanted to play with exotic logics; how might one do it?"
> First question: what's an exotic logics?
> Do you mean things like three-value logic, fuzzy logic, probabilistic
> reasoning, etc?
> Or do you mean logical operators others than and, or, xor, nand, nor, etc?
> Or both? Something else?

The short answer is 'yes'.

Obviously, I don't know much about this stuff. I was looking a table
of different
operators and their truth values and saw that these were just
different ways of
reading and comparing numbers. I wrote this code to explore this idea
in a
general sense and see where it leads and learn something about

> [...]
> If (nearly) all your methods are static methods, chances are a class is
> the wrong solution. Why not just define the static methods as top-level
> functions?

That is exactly how they started. I wrapped them up in an class
because I
thought I might want to create a bunch of them for testing and
experimentation. I'm curious to see how combinations of functions give
same (or different) results. I've read one can do all of the 16
operations with clever uses of NAND or NOR.


> You're implementation seems rather confusing. I think that's partly
> because you use lots of abbreviated jargon terms that mean little or
> nothing to me: rdx, opr (operator?), lsd, pute.

Sorry about the confusion. It's because I'm confused. I should check
out a book on the subject. Thanks for your help.

William Clifford

More information about the Python-list mailing list