From: Renaud Pons
Subject: looking for lisp code to simplify boolean expressions
Date: 
Message-ID: <ttdu2akyf7h.fsf@laas.fr>
Hello

I am looking for some lisp code which may simplify boolean expressions
(as it is done by the 'bsimp' function in Maple).  For example,
'(c1 and (c2 or c3)) or (c1 and ((not c2) or (not c3)))'
shoud return 'c1'

The expressions I have to simplify are a little bit more complicated
but the job can be easely made by hand. The problem is that I have
many expressions to simplify.

I am a beginner with lisp and I work with cmucl under solaris. Thanks
a lot for any hints.
-- 
Renaud - <············@laas.fr> 
From: apinkus
Subject: Re: looking for lisp code to simplify boolean expressions
Date: 
Message-ID: <39FCE532.D755F6C1@xs4all.nl>
Does it need to be lisp? Because Yacas can handle it:

In> CanProve((c1 And (c2 Or c3)) Or (c1 And ((Not c2) Or (Not c3))))
Out> c1;

http://www.xs4all.nl/~apinkus/yacas.html


Renaud Pons wrote:

> Hello
>
> I am looking for some lisp code which may simplify boolean expressions
> (as it is done by the 'bsimp' function in Maple).  For example,
> '(c1 and (c2 or c3)) or (c1 and ((not c2) or (not c3)))'
> shoud return 'c1'
>
> The expressions I have to simplify are a little bit more complicated
> but the job can be easely made by hand. The problem is that I have
> many expressions to simplify.
>
> I am a beginner with lisp and I work with cmucl under solaris. Thanks
> a lot for any hints.
> --
> Renaud - <············@laas.fr>