[PPL-devel] Multi-dimensional affine transformation?

Hosung Song hosungs at umich.edu
Sun Oct 10 05:15:20 CEST 2004


Dear PPL Developers,

Greetings. I have a few questions about affine image operations and some 
thing else. My understanding about affine transformation impelmentation 
in PPL is that we have only one-dimensional transformation operations. 
That is, any transformation is applied only to the specific variable 
x_k. I'm wondering how I can do affine transformations for all variables 
x_0,...,x_{n-1} at once. For example, let's think about the 2D 
transformation as follows.

	x'' = a*x + b*y + c    (1)
	y'' = d*x + e*y + f    (2)

Please correct me if my understanding is ever wrong. I would think about 
doing this 2D transformation by applying 2 1D transformations (which are 
available in PPL) as:

	x' = a*x + b*y + c
	y' = y

then
	x'' = x'
	y'' = d*x' + e*y' + f

. Surely, the results are, in general, not the same as I intended. Am I 
missing some basic concepts about affine transformations? Or is this 
just the limitation of PPL? What I'm now thinking to work around this, 
is, to first add 2 dimensions (x'' & y'') to the original 2D polyhedron 
(x & y), then add constraints for (1) and (2), then swap x''/y'' with 
x/y by a mapping function, then remove the higher 2 dimensions (now x & 
y). Is this a right and necessary approach? Your experienced comments 
would be greatly appreciated.

One more question is, I just skimmed through the new version, but I'm 
wondering if the C interface of the new version supports the powerset 
construction. If not, do you think it's quite difficult to add the 
support? Thanks in advance.

Best,

Hosung




More information about the PPL-devel mailing list