[PPL-devel] Confusion about "space dimension"

Enea Zaffanella zaffanella.enea at alice.it
Wed Feb 1 15:03:32 CET 2006


Roberto Bagnara wrote:

[...]

> The same sin is committed by Constraint, Generator and so forth.
> I believe we should stick to one, unambiguous definition of
> "space dimension" and be consistent with it throughout the library.

If a Constraint/Generator has to become a syntactic object, then several
things have to be changed, besides the space dimension issue.
Currently, a Constraint is an affine half-space or an affine hyperplane,
i.e., a semantic object. This allows for the automatic normalization of 
the variables' coefficients and of the inhomogeneous term, as well as
for semantic comparisons. Therefore, if I understand what you mean, we
should maybe have both a semantic and a syntactic constraint (with
appropriate naming schemes).

For instance, considering polyhedra, the semantic constraints should 
correspond to, say, Hyperplane, Closed_Halfspace and Open_Halfspace. 
Their syntactic counterpart is given by linear constraints (or affine 
constraints, if we want to be terminologically strict) having rational 
coefficients.

Similarly, the semantic generators will be (automatically normalized) 
lines, rays, points and closure points, all having integer coefficients 
and (for points and closure points) a divisor. Their syntactic 
counterparts are given by (possibly un-normalized) vectors having 
rational coefficients.

 > We know what "space dimension" is for a semantic object: it is
 > also clearly stated in the documentation.  We need to find a similar
 > definition that works for syntactic objects (such as the minimum space
 > dimension for which the object makes sense) or conclude that the
 > notion of "space dimension" should be reserved to semantic objects
 > only and find another name for this other concept.
 > Feedback is welcome on all these points.
 > Ciao,
 >
 >     Roberto
 >

When considering systems of semantic objects, all the object in a system 
will have the same space dimension. They can be reordered and modified 
as long as the semantics of the system stays the same. We can add/remove 
redundant objects in the multiset.

In contrast, a system of syntactic objects is a list of syntactic 
objects: should reordering and/or semantics-preserving modifications be 
allowed on it? What is the "space dimension" of this object? The maximum 
of the "space dimensions" of the objects it contains?

To keep it short, I think that this change of perspective has to be 
carefully considered, one facet at a time, striving for maximum 
consistency and clarity. It will take some time to foresee all of the 
possible consequences of any design change in this respect ...

Ciao,
Enea.





More information about the PPL-devel mailing list