Logic algebra



On 4/9/08, Alexey Beshenov <al at beshenov.ru> wrote:

> I've done a logic algebra package:
>
>   http://beshenov.ru/maxima/logic/
>
>  It defines operators "AND", "OR", "NOT" (written in uppercase,
>  since "and", "or", "not" are built-in operators for predicates), as well as
>  Sheffer stroke ("NAND"), Peirce arrow ("NOR"), implication ("IMPL"),
>  equivalence ("EQ") and sum modulo 2 ("XOR").

Alexey, thanks a lot. I think this will be useful to many people.
Some random comments.
(1) I'd like to see this stuff merged into maxima/src eventually.
Towards that end I think the operators ought to be renamed
to lowercase. Merging in this stuff would make "and" and "or"
commutative, which has been mentioned on this mailing list
before (and creating noncommutative operators "and_then"
and "or_else").
(2) I suggest renaming "IMPL" to "IMPLIES".
(3) The plural of basis, in English, is bases.
(4) I recommend changing smashedtogethernames
to separated_by_underscores.

>  Could it be placed in the /share/contrib?

OK by me.

best

Robert Dodier