Hi, all! During some experiments I found a behaviour of cond during search that
I cannot explain. It looks like a bug to me. Can anyone please explain the
difference between the two calls to ExploreAll in the following:

--------------------------------------
declare
proc {F S}
   C
in
   S = {FS.var.upperBound [1#20]}
   C = ({FS.card S} <: 2)
   thread
      cond
         C = 1
      then
         {Browse here}
         case {FS.reflect.upperBound S} of
            [X] then {FS.include X S}
         else skip end
      end
   end
   {Space.waitStable}
   {FS.subset S {FS.value.make [1]}}
end
proc {F2 S}
   C
in
   S = {FS.var.upperBound [1#20]}
   thread
      cond
         {FS.card S} <: 2
      then
         {Browse here}
         case {FS.reflect.upperBound S} of
            [X] then {FS.include X S}
         else skip end
      end
   end
   {Space.waitStable}
   {FS.subset S {FS.value.make [1]}}
end

{ExploreAll F}
{ExploreAll F2}
----------------------------

Thanks in advance. Cheers,

Jorge.


_________________________________________________________________________________
mozart-users mailing list                               
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users

Reply via email to