Drexel dragonThe Math ForumDonate to the Math Forum



Search All of the Math Forum:

Views expressed in these public forums are not endorsed by Drexel University or The Math Forum.


Math Forum » Discussions » Software » comp.soft-sys.math.mathematica

Topic: strange booleanconvert behavior?
Replies: 3   Last Post: Jul 20, 2012 3:57 AM

Advanced Search

Back to Topic List Back to Topic List Jump to Tree View Jump to Tree View   Messages: [ Previous | Next ]
Francisco Gutierrez

Posts: 100
Registered: 5/31/05
Re: strange booleanconvert behavior?
Posted: Jul 20, 2012 3:57 AM
  Click to see the message monospaced in plain text Plain Text   Click to reply to this topic Reply

Many thanks to Dave Snead and Peter Pein for their responses to my query about BooleanConvert behavior.

The solutions worked. At the same time, it is clear that BooleanConvert has a quirk (or the documentation is severely incomplete). Hope in version 9 it is fixed

Francisco

From: Dave Snead <dsnead6@charter.net>
Sent: Wednesday, July 11, 2012 1:20 AM
Subject: Re: strange booleanconvert behavior?

Found the same problem.
Clearly Mathematica isn't working correctly when the number of sublists is
more than 9.
As a work around consider

num1={{a,b,c,d},{a,b,c,e},{a,b,c,f},{a,b,c,g},{a,b,c,h},{a,b,c,i},{a,b,c,j},{a,b,c,k},{a,b,c,l},{a,b,c,m},{a,b,c,n}}
num2=Apply[Or,Apply[And,#]&/@num1]
x = BooleanConvert[Take[num2, 9], "CNF"];
y = BooleanConvert[Drop[num2, 9], "CNF"];
BooleanConvert[x || y, "CNF"]

Cheers,
Dave


-----Original Message-----
From: Francisco Gutierrez
Sent: Monday, July 09, 2012 9:42 PM
Subject: strange booleanconvert behavior?

Dear Group:
Say I have the following expression:
num1={{a,b,c,d},{a,b,c,e},{a,b,c,f},{a,b,c,g},{a,b,c,h},{a,b,c,i},{a,b,c,j},{a,b,c,k},{a,b,c,l},{a,b,c,m},{a,b,c,n}}


I transform it into a logical expression:
num2=Apply[Or,Apply[And,#]&/@num1]

I want to simplify this to a CNF, and the obvious function to use is Boolean
Convert. Suppose I apply it to NINE elements of num2:
BooleanConvert[Take[num2,9],"CNF"]
The output is=

a&&b&&c&&(d||e||f||g||h||i||j||k||l)

It works perfectly well!


However, if I apply BooleanConvert to the whole expression I get back a
bunch of crap. Also if I apply it to 10 elements of num2.
In sum, it appears that BooleanConvert only works well for 9 expressions or
less. Tried this with other two examples, and found
exactly the same result.

All this in Mathematica 8

Can somebody help me?
Francisco



Point your RSS reader here for a feed of the latest messages in this topic.

[Privacy Policy] [Terms of Use]

© Drexel University 1994-2014. All Rights Reserved.
The Math Forum is a research and educational enterprise of the Drexel University School of Education.