The inclusion of Regular Expressions (REs) is the kernel of any type-checking
algorithm for XML manipulation languages. XML applications would
benefit from the extension of REs with interleaving and counting, but this is
not feasible in general, since inclusion is EXPSPACE-complete for such extended REs.
In previous works we introduced a notion of ``conflict-free REs'', which are extended REs with excellent complexity behavior, including a polynomial inclusion algorithm and linear membership.
Conflict-free REs have interleaving and counting, but the complexity is
tamed by the ``conflict-free'' limitations, which have been found to be
satisfied by the vast majority of the content models published on
the Web.
However, a type-checking algorithm needs to compare machine-generated
subtypes against human-defined supertypes. The conflict-free restriction,
while quite harmless for the human-defined supertype, is far too restrictive
for the subtype. We show here that the PTIME inclusion algorithm can be actually extended to deal with totally unrestricted REs with counting and interleaving in the subtype position,
provided that the supertype is conflict-free.
This is exactly the expressive power that we need in order to use subtyping
inside type-checking
algorithms, and the cost of this generalized algorithm is only quadratic,
which is as good as the best algorithm we have for the
symmetric case. The result is extremely surprising, since we had previously found that
symmetric inclusion becomes NP-hard as soon as the candidate subtype
is enriched with binary intersection, a generalization that looked much
more innocent than what we achieve here.
Keyword
°
Databases °
Type Theory
Group
°
Databases
Contact
[none]