  An increasing number of scientific applications are making use of irregular
data access patterns. An important class of such patterns involve
subscripted-subscripts, wherein an array value appears in the index expression
of another array. Even though the information required to parallelize loops
with such patterns is often available in the program, present compiler
techniques fall short of analyzing that information. In this paper we present a
study of subscripted-subscripts, the properties that define the subscript
arrays, and an algorithm based on symbolic range aggregation, that will help
prove the presence of some of the properties of the subscript array in the
program. We show that, in an important class of programs, the algorithm can
boost the performance from essentially sequential execution to close to fully
parallel.
