http://www.perlmonks.org?node_id=394340


in reply to Re^3: A "but" operator.
in thread A "but" operator.

I think you are trying to say a "but" operator is equivalent "not and" operator and that !(A->B) is equivalent to "but". I am assuming that "!" symbolizes the negation operator and "->" symbolized the if-then ( or implies ) operator.

Yet ...
PQP->Q
TTT
TFF
FTT
FFT

PQP and Q!(P and Q)
TTTF
TFFT
FTFT
FFFT
So I would say "A and !B"is not equivalent to "!(A -> B)" and I wouldn't say "A but B" <=> "A and !B", but I could just be misunderstanding your notation. :)

As far a what a but operator is I would say it should be equivalent to the "Boolean And" operator. And is not needed in a programming language. The word "but" is used in commonly to emphasis that an assumption is false. Example ...

If a student where to errorously assume that multiplaction is 
the same as addition the student might state ...


1 + 1 = 2 and 2 + 2 = 4 and 2 * 2 = 4 and 1 * 1 = 2


... which we know to be false.  The student's teacher would say ...


1 + 1 = 2 and 2 + 2 = 4 and 2 * 2 = 4 but 1 * 1 != 2


... to correct the student.


This is the same as


1 + 1 = 2 and 2 + 2 = 4 and 2 * 2 = 4 and 1 * 1 != 2


    T and T and T and T is TRUE


It is not equal to


1 + 1 = 2 and 2 + 2 = 4 and 2 * 2 = 4 and not (1 * 1 != 2)



     T and T and T and F is FALSE

But merely gives emphasis to the fact that the student's assumption is false.

Janitored by davido: removed excess spaces within pre tags that caused horizontal scrolling.


Plankton: 1% Evil, 99% Hot Gas.