Hi,

On Aug 3, 7:39 pm, Martin Albrecht <m...@informatik.uni-bremen.de>
wrote:
> > The problem in my case is really one of scale. I have put a larger
> > example at the bottom of this message.  When I try to find the
> > groebner basis in sage 4.1 (which seems to use polybori-0.5rc.p8) the
> > memory usage goes over 1.6GB and then sage crashes.  It is possible
> > that it just isn't realistic to solve it using Groebner Bases.
> > However, I should say that when reformulated as a SAT solving problem,
> > the standard off the shelf minisat 2.0 code can solve it in 0.04
> > seconds.  This is despite the fact that minisat only takes CNF as the
> > input which means that all the structure of the problem has been
> > removed before it sees it.
>
> Hi Raphael,
>
> note that Gröbner basis methods will always return a complete algebraic
> description of the solution set while SAT solving approaches terminate once
> *one* solution is found. Thus if there are many solutions they have an
> advantage. You can try to guess some variables in order to improve the
> efficiency of the Gröbner basis based methods.
>
You are quite right of course. My example wasn't fair as in this case
there are in fact a really large number of solutions.

However ( :) ) attached below is another slightly smaller example
where there is in fact no solution, making it a fairer comparison I
hope.  It takes minisat 2 mins 22 seconds on my computer to work that
out.  Using polybori in sage as above takes 700-800MB of RAM and
doesn't terminate in the hour or so I gave it.  I only mention this in
case anyone working on polybori is interested in specific examples.

Raphael

---- attached system of polys with no solution ---
R.<a111,a112,a113,a114,a115,a116,a121,a122,a123,a124,a125,a126,a211,a212,a213,a214,a215,a216,a221,a222,a223,a224,a225,a226,b111,b112,b113,b114,b115,b116,b121,b122,b123,b124,b125,b126,b211,b212,b213,b214,b215,b216,b221,b222,b223,b224,b225,b226,c111,c112,c113,c114,c115,c116,c121,c122,c123,c124,c125,c126,c211,c212,c213,c214,c215,c216,c221,c222,c223,c224,c225,c226
> = BooleanPolynomialRing(order='lex')

I = ( a111 * b111 * c111 + a112 * b112 * c112 + a113 * b113 * c113 +
a114 * b114 * c114 + a115 * b115 * c115 + a116 * b116 * c116 -1, a111
* b111 * c121 + a112 * b112 * c122 + a113 * b113 * c123 + a114 * b114
* c124 + a115 * b115 * c125 + a116 * b116 * c126 , a111 * b111 * c211
+ a112 * b112 * c212 + a113 * b113 * c213 + a114 * b114 * c214 + a115
* b115 * c215 + a116 * b116 * c216 , a111 * b111 * c221 + a112 * b112
* c222 + a113 * b113 * c223 + a114 * b114 * c224 + a115 * b115 * c225
+ a116 * b116 * c226 , a111 * b121 * c111 + a112 * b122 * c112 + a113
* b123 * c113 + a114 * b124 * c114 + a115 * b125 * c115 + a116 * b126
* c116 , a111 * b121 * c121 + a112 * b122 * c122 + a113 * b123 * c123
+ a114 * b124 * c124 + a115 * b125 * c125 + a116 * b126 * c126 , a111
* b121 * c211 + a112 * b122 * c212 + a113 * b123 * c213 + a114 * b124
* c214 + a115 * b125 * c215 + a116 * b126 * c216 -1, a111 * b121 *
c221 + a112 * b122 * c222 + a113 * b123 * c223 + a114 * b124 * c224 +
a115 * b125 * c225 + a116 * b126 * c226 , a111 * b211 * c111 + a112 *
b212 * c112 + a113 * b213 * c113 + a114 * b214 * c114 + a115 * b215 *
c115 + a116 * b216 * c116 , a111 * b211 * c121 + a112 * b212 * c122 +
a113 * b213 * c123 + a114 * b214 * c124 + a115 * b215 * c125 + a116 *
b216 * c126 , a111 * b211 * c211 + a112 * b212 * c212 + a113 * b213 *
c213 + a114 * b214 * c214 + a115 * b215 * c215 + a116 * b216 * c216 ,
a111 * b211 * c221 + a112 * b212 * c222 + a113 * b213 * c223 + a114 *
b214 * c224 + a115 * b215 * c225 + a116 * b216 * c226 , a111 * b221 *
c111 + a112 * b222 * c112 + a113 * b223 * c113 + a114 * b224 * c114 +
a115 * b225 * c115 + a116 * b226 * c116 , a111 * b221 * c121 + a112 *
b222 * c122 + a113 * b223 * c123 + a114 * b224 * c124 + a115 * b225 *
c125 + a116 * b226 * c126 , a111 * b221 * c211 + a112 * b222 * c212 +
a113 * b223 * c213 + a114 * b224 * c214 + a115 * b225 * c215 + a116 *
b226 * c216 , a111 * b221 * c221 + a112 * b222 * c222 + a113 * b223 *
c223 + a114 * b224 * c224 + a115 * b225 * c225 + a116 * b226 * c226 ,
a121 * b111 * c111 + a122 * b112 * c112 + a123 * b113 * c113 + a124 *
b114 * c114 + a125 * b115 * c115 + a126 * b116 * c116 , a121 * b111 *
c121 + a122 * b112 * c122 + a123 * b113 * c123 + a124 * b114 * c124 +
a125 * b115 * c125 + a126 * b116 * c126 , a121 * b111 * c211 + a122 *
b112 * c212 + a123 * b113 * c213 + a124 * b114 * c214 + a125 * b115 *
c215 + a126 * b116 * c216 , a121 * b111 * c221 + a122 * b112 * c222 +
a123 * b113 * c223 + a124 * b114 * c224 + a125 * b115 * c225 + a126 *
b116 * c226 , a121 * b121 * c111 + a122 * b122 * c112 + a123 * b123 *
c113 + a124 * b124 * c114 + a125 * b125 * c115 + a126 * b126 * c116 ,
a121 * b121 * c121 + a122 * b122 * c122 + a123 * b123 * c123 + a124 *
b124 * c124 + a125 * b125 * c125 + a126 * b126 * c126 , a121 * b121 *
c211 + a122 * b122 * c212 + a123 * b123 * c213 + a124 * b124 * c214 +
a125 * b125 * c215 + a126 * b126 * c216 , a121 * b121 * c221 + a122 *
b122 * c222 + a123 * b123 * c223 + a124 * b124 * c224 + a125 * b125 *
c225 + a126 * b126 * c226 , a121 * b211 * c111 + a122 * b212 * c112 +
a123 * b213 * c113 + a124 * b214 * c114 + a125 * b215 * c115 + a126 *
b216 * c116 -1, a121 * b211 * c121 + a122 * b212 * c122 + a123 * b213
* c123 + a124 * b214 * c124 + a125 * b215 * c125 + a126 * b216 *
c126 , a121 * b211 * c211 + a122 * b212 * c212 + a123 * b213 * c213 +
a124 * b214 * c214 + a125 * b215 * c215 + a126 * b216 * c216 , a121 *
b211 * c221 + a122 * b212 * c222 + a123 * b213 * c223 + a124 * b214 *
c224 + a125 * b215 * c225 + a126 * b216 * c226 , a121 * b221 * c111 +
a122 * b222 * c112 + a123 * b223 * c113 + a124 * b224 * c114 + a125 *
b225 * c115 + a126 * b226 * c116 , a121 * b221 * c121 + a122 * b222 *
c122 + a123 * b223 * c123 + a124 * b224 * c124 + a125 * b225 * c125 +
a126 * b226 * c126 , a121 * b221 * c211 + a122 * b222 * c212 + a123 *
b223 * c213 + a124 * b224 * c214 + a125 * b225 * c215 + a126 * b226 *
c216 -1, a121 * b221 * c221 + a122 * b222 * c222 + a123 * b223 * c223
+ a124 * b224 * c224 + a125 * b225 * c225 + a126 * b226 * c226 , a211
* b111 * c111 + a212 * b112 * c112 + a213 * b113 * c113 + a214 * b114
* c114 + a215 * b115 * c115 + a216 * b116 * c116 , a211 * b111 * c121
+ a212 * b112 * c122 + a213 * b113 * c123 + a214 * b114 * c124 + a215
* b115 * c125 + a216 * b116 * c126 -1, a211 * b111 * c211 + a212 *
b112 * c212 + a213 * b113 * c213 + a214 * b114 * c214 + a215 * b115 *
c215 + a216 * b116 * c216 , a211 * b111 * c221 + a212 * b112 * c222 +
a213 * b113 * c223 + a214 * b114 * c224 + a215 * b115 * c225 + a216 *
b116 * c226 , a211 * b121 * c111 + a212 * b122 * c112 + a213 * b123 *
c113 + a214 * b124 * c114 + a215 * b125 * c115 + a216 * b126 * c116 ,
a211 * b121 * c121 + a212 * b122 * c122 + a213 * b123 * c123 + a214 *
b124 * c124 + a215 * b125 * c125 + a216 * b126 * c126 , a211 * b121 *
c211 + a212 * b122 * c212 + a213 * b123 * c213 + a214 * b124 * c214 +
a215 * b125 * c215 + a216 * b126 * c216 , a211 * b121 * c221 + a212 *
b122 * c222 + a213 * b123 * c223 + a214 * b124 * c224 + a215 * b125 *
c225 + a216 * b126 * c226 -1, a211 * b211 * c111 + a212 * b212 * c112
+ a213 * b213 * c113 + a214 * b214 * c114 + a215 * b215 * c115 + a216
* b216 * c116 , a211 * b211 * c121 + a212 * b212 * c122 + a213 * b213
* c123 + a214 * b214 * c124 + a215 * b215 * c125 + a216 * b216 *
c126 , a211 * b211 * c211 + a212 * b212 * c212 + a213 * b213 * c213 +
a214 * b214 * c214 + a215 * b215 * c215 + a216 * b216 * c216 , a211 *
b211 * c221 + a212 * b212 * c222 + a213 * b213 * c223 + a214 * b214 *
c224 + a215 * b215 * c225 + a216 * b216 * c226 , a211 * b221 * c111 +
a212 * b222 * c112 + a213 * b223 * c113 + a214 * b224 * c114 + a215 *
b225 * c115 + a216 * b226 * c116 , a211 * b221 * c121 + a212 * b222 *
c122 + a213 * b223 * c123 + a214 * b224 * c124 + a215 * b225 * c125 +
a216 * b226 * c126 , a211 * b221 * c211 + a212 * b222 * c212 + a213 *
b223 * c213 + a214 * b224 * c214 + a215 * b225 * c215 + a216 * b226 *
c216 , a211 * b221 * c221 + a212 * b222 * c222 + a213 * b223 * c223 +
a214 * b224 * c224 + a215 * b225 * c225 + a216 * b226 * c226 , a221 *
b111 * c111 + a222 * b112 * c112 + a223 * b113 * c113 + a224 * b114 *
c114 + a225 * b115 * c115 + a226 * b116 * c116 , a221 * b111 * c121 +
a222 * b112 * c122 + a223 * b113 * c123 + a224 * b114 * c124 + a225 *
b115 * c125 + a226 * b116 * c126 , a221 * b111 * c211 + a222 * b112 *
c212 + a223 * b113 * c213 + a224 * b114 * c214 + a225 * b115 * c215 +
a226 * b116 * c216 , a221 * b111 * c221 + a222 * b112 * c222 + a223 *
b113 * c223 + a224 * b114 * c224 + a225 * b115 * c225 + a226 * b116 *
c226 , a221 * b121 * c111 + a222 * b122 * c112 + a223 * b123 * c113 +
a224 * b124 * c114 + a225 * b125 * c115 + a226 * b126 * c116 , a221 *
b121 * c121 + a222 * b122 * c122 + a223 * b123 * c123 + a224 * b124 *
c124 + a225 * b125 * c125 + a226 * b126 * c126 , a221 * b121 * c211 +
a222 * b122 * c212 + a223 * b123 * c213 + a224 * b124 * c214 + a225 *
b125 * c215 + a226 * b126 * c216 , a221 * b121 * c221 + a222 * b122 *
c222 + a223 * b123 * c223 + a224 * b124 * c224 + a225 * b125 * c225 +
a226 * b126 * c226 , a221 * b211 * c111 + a222 * b212 * c112 + a223 *
b213 * c113 + a224 * b214 * c114 + a225 * b215 * c115 + a226 * b216 *
c116 , a221 * b211 * c121 + a222 * b212 * c122 + a223 * b213 * c123 +
a224 * b214 * c124 + a225 * b215 * c125 + a226 * b216 * c126 -1, a221
* b211 * c211 + a222 * b212 * c212 + a223 * b213 * c213 + a224 * b214
* c214 + a225 * b215 * c215 + a226 * b216 * c216 , a221 * b211 * c221
+ a222 * b212 * c222 + a223 * b213 * c223 + a224 * b214 * c224 + a225
* b215 * c225 + a226 * b216 * c226 , a221 * b221 * c111 + a222 * b222
* c112 + a223 * b223 * c113 + a224 * b224 * c114 + a225 * b225 * c115
+ a226 * b226 * c116 , a221 * b221 * c121 + a222 * b222 * c122 + a223
* b223 * c123 + a224 * b224 * c124 + a225 * b225 * c125 + a226 * b226
* c126 , a221 * b221 * c211 + a222 * b222 * c212 + a223 * b223 * c213
+ a224 * b224 * c214 + a225 * b225 * c215 + a226 * b226 * c216 , a221
* b221 * c221 + a222 * b222 * c222 + a223 * b223 * c223 + a224 * b224
* c224 + a225 * b225 * c225 + a226 * b226 * c226 -1)*R
I.groebner_basis()



--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to