On Tue, 05 Jun 2007, at 00:41, Tony Morris wrote:
I would like to know if all 16 possible functions that accept two
boolean arguments have names in First-Order Logic. I know they have
Haskell function names (e.g. \p -> \_ -> id p, \_ -> \_ -> const
True),
but I'm hoping there is a more general name that is recognised by
anyone
with a feel for logic, but not necessarily Haskell.
I have listed all sixteen of these functions below using Haskell
(named
a to p) along with the name of those that I am aware of having a
name as
a comment.
Thanks for any tips.
{-
p q | a b c d e f g h i j k l m n o p
0 0 | 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
0 1 | 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
1 0 | 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
1 1 | 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
-}
Common Lisp has names for them. See:
http://www.cs.cmu.edu/Groups/AI/html/cltl/clm/
node131.html#SECTION001670000000000000000
and then search for
(boole boole-and x y) == (logand x y)
and look at the table just before that.
---Frank
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe