On Sun, Nov 4, 2012 at 6:29 PM, Michal D. <michal.dobrog...@gmail.com> wrote: >> for all w in Dy there exists a v in Dx such that the relationship v >> compare w is true. >> >> Does this sound right? >> > Yes, that sounds right so long as compare implies looking up the values in > the correct constraint table. Your formulation also sounds consistent with > what I said before signalling that something has been lost in translation! > consistent = compatible = relationship is true
Ok! I had somehow gotten a different idea of consistency: for all w in Dy for all v in Dx the relationship v compare w is true Now that I know what to look for, though, I see the existential constraint in the wikipedia article. (I'm still a bit shaky about the terminology, but I'm beginning to feel like I understand what you are doing.) But I imagine that that is the point of calling it "arc consistency" -- each arc is consistent to itself, but need not be consistent with other arcs? So... An consistent arc seems to be implemented as a pair of set bits in D which corresponds to a set bit in A and a set bit in C. (So we consider all the possible cases and if any of them are true we are satisfied.) Except you have C implemented a s a pair -- a matrix and its transpose. [That's an optimization for performance, though, and I feel that that should take back seat to simplicity except where it has a significant measurable benefit which exceeds its cost (complexity always has a cost).] A matches along the leading D dimension, C matches along the trailing D dimension. The bit pair in D thus corresponds to a row/column pair against A as well as against C. A tricky part seems to be that the upper triangle of A corresponds to the forward direction in C (the bit in D that selects a row in A is also selecting a row in C) while the lower triangle of A corresponds to the reverse direction in C. But I'm not seeing anything like this in the text of the wikipedia entry. And, if the diagram on the right hand side is meant to be an illustration where the constraint is x < y then it looks like we do not care about the order of the two variables. In other words, if we specify the constraint x < y it looks like either x1 < x2 or x2 < x1 is sufficient to satisfy arc consistency. In other words, i think we should always use the symmetric closure of the constraint. Does this sound valid to you? If not, where have I gone astray? Thanks, -- Raul ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm