[pypy-svn] r23837 - pypy/dist/pypy/lib/logic/computation_space

auc at codespeak.net auc at codespeak.net
Wed Mar 1 16:46:08 CET 2006


Author: auc
Date: Wed Mar  1 16:46:05 2006
New Revision: 23837

Modified:
   pypy/dist/pypy/lib/logic/computation_space/distributor.py
   pypy/dist/pypy/lib/logic/computation_space/problems.py
   pypy/dist/pypy/lib/logic/computation_space/strategies.py
Log:
forgot this


Modified: pypy/dist/pypy/lib/logic/computation_space/distributor.py
==============================================================================
--- pypy/dist/pypy/lib/logic/computation_space/distributor.py	(original)
+++ pypy/dist/pypy/lib/logic/computation_space/distributor.py	Wed Mar  1 16:46:05 2006
@@ -158,6 +158,7 @@
             self.cs._del_var(old_choose_var)
             self.cs.STABLE.bind(True) # unlocks Ask
         print "-- distributor terminated (%s) --" % self.cs.id
+        self.cs.STABLE.bind(True) # it can't hurt ...
 
 
     def distribute(self, choice):

Modified: pypy/dist/pypy/lib/logic/computation_space/problems.py
==============================================================================
--- pypy/dist/pypy/lib/logic/computation_space/problems.py	(original)
+++ pypy/dist/pypy/lib/logic/computation_space/problems.py	Wed Mar  1 16:46:05 2006
@@ -11,8 +11,8 @@
     cs = computation_space
     x, y, z = cs.var('x'), cs.var('y'), cs.var('z')
     cs.set_dom(x, c.FiniteDomain([-4, -2, -1, 0, 1, 2, 4]))
-    cs.set_dom(y, c.FiniteDomain([0, 2, 3, 4, 5, 16]))
-    cs.set_dom(z, c.FiniteDomain([-2, -1, 0, 1, 2]))
+    cs.set_dom(y, c.FiniteDomain([0, 1, 2, 4, 8, 16]))
+    cs.set_dom(z, c.FiniteDomain([0, 1, 2]))
     cs.add_constraint([x, y, z], 'y==x**2-z')
     # set up a distribution strategy
     cs.set_distributor(di.DichotomyDistributor(cs))

Modified: pypy/dist/pypy/lib/logic/computation_space/strategies.py
==============================================================================
--- pypy/dist/pypy/lib/logic/computation_space/strategies.py	(original)
+++ pypy/dist/pypy/lib/logic/computation_space/strategies.py	Wed Mar  1 16:46:05 2006
@@ -20,6 +20,7 @@
             space.commit(1)
             outcome = do_dfs(space)
             if outcome is None:
+                new_space.ask()
                 new_space.commit(2)
                 return do_dfs(new_space)
             else:
@@ -53,9 +54,11 @@
         elif status == csp.Alternative(2):
             print ' '*len(sp_stack), "branches ..."
             sp1 = space.clone()
+            sp1.ask()
             sp1.commit(1)
             sp_stack.append(sp1)
             sp2 = space.clone()
+            sp2.ask()
             sp2.commit(2)
             sp_stack.append(sp2)
 



More information about the Pypy-commit mailing list