4.1 DDM 1516 is at least as powerful as DDM 1.3

Data Distribution Management Specifications 1.3 And 1516
Are Equivalently Powerful
Mikel D. Petty, Ph.D.
Virginia Modeling, Analysis & Simulation Center
Old Dominion University
7000 College Drive, Suffolk VA 23435
[email protected] 757-686-6210
ABSTRACT: The High Level Architecture (HLA) is an architecture for constructing federations of distributed
simulations, or federates, that exchange simulation data at run-time. HLA’s Data Distribution Management (DDM)
services reduce the amount of simulation data transported in a federation and delivered to an HLA federate by
allowing data communications connections to be based on federates’ run-time expressions of data production and
requirements.
The definition of HLA in general, and DDM in particular, is different from the previous Department of Defense 1.3
version to the new Institute for Electrical and Electronic Engineers 1516 version of the HLA specifications. The
power of DDM to represent federates’ data production and requirements under the old specification (DDM 1.3) and
new specification (DDM 1516) have been compared using formal methods. It was previously reported that DDM
1516 is at least as powerful as DDM 1.3 by exhibiting a simple transformation from any DDM 1.3 configuration to
an equivalent DDM 1516 configuration.
Left open, however, was the question whether DDM 1516 was more powerful than DDM 1.3 or equal in power to it.
In this paper that question is settled. DDM 1.3 is proven to be at least as powerful as DDM 1516 by defining a valid
mapping (but not a constructive transformation) from DDM 1516 to DDM 1.3 configurations. From that, DDM 1.3
and DDM 1516 are shown to be equivalently powerful. Finally, the difference between the constructive proof of the
previous theorem and the existence proof of the new one, and some associated implications for federation
developers, are discussed.
1.
Introduction
The High Level Architecture (HLA) is an architecture
for constructing distributed simulations that exchange
simulation data at run-time. In HLA terms, a set of
simulations capable of interoperating is a federation,
and the individual simulations are federates. HLA
includes a category of services, called Data Distribution
Management (DDM), which is intended to reduce the
amount of simulation data transported in a federation
and delivered to an HLA federate by the Run-Time
Infrastructure (RTI) to the federates during a federation
execution. The RTI uses a federate’s DDM expressions
to set and update the data connections during a
federation execution.
Two specifications of HLA are currently available, the
Department of Defense Version 1.3 (HLA 1.3) and the
new Institute for Electrical and Electronic Engineers
standard 1516 (HLA 1516). DDM in HLA 1.3 (DDM
1.3) is substantially different from DDM in HLA 1516
(DDM 1516). It is not immediately obvious whether or
not the differences affect the power to represent and
relate data production and requirements of DDM 1516
with respect to DDM 1.3. Because HLA 1516 may
replace HLA 1.3, a reduction in DDM representational
power would be undesirable. However, by using formal
methods several results have been obtained.
Two theorems have been previously reported.
Theorem 1. DDM 1516 is at least as powerful, in terms
of relating federates’ data production and requirements,
as DDM 1.3.
Theorem 2. No simple transformation from DDM 1516
configurations to DDM 1.3 configurations can be valid.
Two new theorems are proven in this paper.
Theorem 3. DDM 1.3 is at least as powerful as DDM
1516.
Theorem 4. DDM 1.3 and DDM 1516 are equivalently
powerful.
2.
Background
In this section general background on the High Level
Architecture and Data Distribution Management is
provided and the differences between DDM 1.3 and
DDM 1516 are explained.
2.1
High Level Architecture
HLA is an architecture for constructing distributed
simulations. It facilitates interoperability among
different simulations and simulation types and promotes
reuse of simulation software modules [1] [5]. HLA can
support virtual, constructive, and live simulations from
a variety of applications domains. HLA is defined by
three documents:
1. The HLA Rules [2], which define interoperability
and what capabilities a simulation must have to
achieve it within HLA.
2. The Object Model Template [3], which is a format
for specifying simulation data in terms of a
hierarchy of object classes, and their attributes, and
interactions between objects of those classes, and
their parameters.
3. The Interface Specification [4], which is a precise
specification of the interoperability-related actions
that a simulation may perform, or be asked to
perform, during a simulation execution.
The HLA RTI is an implementation of the Interface
Specification, consisting of a set of services. The RTI
provides services to start and stop a simulation
execution, to transfer data between interoperating
simulations, to control the amount and routing of data
that is passed, and to coordinate the passage of
simulated time among the simulations. Within the
HLA, a set of collaborating simulations is called a
federation, each of the collaborating simulations is a
federate, and a simulation run is called a federation
execution. Federates that adhere to the Rules can
exchange data defined using the Object Model Template
by invoking the services defined in the Interface
Specification; those services are provided at run-time by
the RTI.
2.2
Data Distribution Management
One category of services defined in the Interface
Specification, Data Distribution Management, is
intended to reduce the amount of simulation data
delivered to a federate during a federation execution. 1
To accomplish the reduction, one or more
multidimensional coordinate spaces, referred to as
routing spaces, are defined with dimensions
corresponding to simulation data (simulation object
attributes or other data available in the simulation).
During a federation execution federates specify what
simulation data they are going to produce (publish) or
1
In this subsection, DDM is described as per the DDM
1.3 specification [4]. The differences between DDM
1.3 and DDM 1516 are presented later.
interested in receiving (subscribe). They do so by
creating regions, called update and subscription regions,
within the routing spaces. Each region is composed of
one or more rectangular subspaces, called extents,
within a routing space. All the extents of a single region
are in the same routing space and are defined on all of
the dimensions of that routing space; the extents and the
region are said to have those dimensions. The extents
of a region are ranges on all of the dimensions of the
routing space in which the region is defined. A range is
a semi-open interval of the form [low value, high value)
along a dimension. Two extents overlap iff2 all of their
ranges overlap on their respective dimensions, i.e., all
the dimensions of the routing space.
When any pair of extents from an update region and a
subscription region overlap in a routing space the
regions are said to overlap. In that case simulation data
should be delivered by the RTI from the federate that
created the update region to the federate that created the
subscription region. The data distribution services
allow update and subscription regions to be created,
modified, and deleted dynamically by federates
throughout a federation execution. Each time a region
is created, modified, or deleted, the set of regions it
overlaps may change, and if so, the data delivery
connections used by the RTI must be changed to reflect
the new region configuration.
2.3
Differences between DDM 1.3 and DDM 1516
DDM 1.3 and DDM 1516 are different. 3 There are
several specific differences, but the most important ones
here, because of the consequences they have on the
definition of overlapping regions, are the elimination of
routing spaces in DDM 1516 and the replacement of
DDM 1.3 regions and extents with the similar but not
identical DDM 1516 region sets and regions. The value
ranges for dimensions are also defined differently.
In DDM 1.3, a routing space is a named sequence of
dimensions. A set of routing spaces can be defined for
use during a federation execution. Regions are created
within a particular routing space. Regions can only
overlap with regions in the same routing space,
implying that only regions with the same dimensions
can overlap. In DDM 1516, there are no routing spaces;
all dimensions are available in a single DDM coordinate
space.
The term “iff” is used as a shorthand for “if and only
if”.
3
In this subsection, DDM 1516 is described as per the
version of the IEEE 1516 specification approved for
standardization by the IEEE in September 2000 [6].
2
Recall that in DDM 1.3 regions consist of one or more
extents, each of which is a rectangular subspace of a
routing space. Because they are all in the routing space,
all of the extents of a region have the same dimensions.
Two regions overlap iff any pair of their extents
overlap. In DDM 1516, regions are a single rectangular
subspace within the coordinate space, analogous to
extents. Region sets are sets of one or more regions.
Regions may be defined on any subset of the available
dimensions and regions in a region set may differ in the
dimensions they have. Regions overlap iff they have at
least one common dimension and they have overlapping
ranges on all common dimensions. Note that it is
possible for regions with different dimensions to
overlap as long as they have some common dimensions
and overlap on them. Region sets overlap iff any pair of
their regions overlap.
DDM 1.3 defines dimensions to be continuous
implicitly semi-open intervals within the semi-open
interval [axis lower bound, axis upper bound), where
axis lower bound and axis upper bound are
implementation parameters, and ranges to be semi-open
subsets of a dimension. DDM 1516 defines dimensions
to be explicitly semi-open intervals within the semiopen interval [0, dimension upper bound), where
dimension upper bound is an implementation parameter,
and ranges to be semi-open subsets of a dimension.
DDM 1516 adds the restriction that the difference
between a range upper bound and a range lower bound
can be no less than 1.
3.
Definitions
Because DDM 1516 may replace DDM 1.3, a federation
developer may need to know how the two DDM
specifications compare in terms of expressive power for
representing data production and requirements. This
section provides formal definitions of the notion of the
expressive power of a DDM specification, as well as
several related terms, that provide the necessary
background for later comparing the two specifications’
power.
3.1
Configurations
A DDM 1.3 configuration is defined to be a set of
dimensions, a set of routing spaces defined on those
dimensions, and a set of regions (and their component
extents) created within those routing spaces. A DDM
1516 configuration is similar, but does not include
routing spaces, and has region sets and regions instead
of regions and extents.
Two configurations are equivalent if there is a bijection
(i.e., a one-to-one and onto mapping) from the regions
(region sets) of one configuration to the regions (region
sets) of the other configuration such that two regions
(region sets) overlap in one configuration iff their
corresponding regions (region sets) overlap in the other.
This definition applies whether the two configurations
are under the same DDM specification or different
specifications.
DDM configurations contain two types of regions
(region sets), update and subscription. Note that regions
types are implicitly accounted for by the definition of
equivalence. Regions (region sets) overlap iff they are
of opposite types, i.e., one of them is an update region
(region set) and one is a subscription region (region set).
In an equivalent configuration, the corresponding
regions (region sets) overlap by definition, so they must
also satisfy the opposite type requirement. Therefore,
because the results that follow depend on equivalence,
they consider the question of whether certain pairs of
regions (region sets) overlap without being concerned
with their types.
3.2
DDM power
To compare the power of DDM 1.3 with DDM 1516, or
any other DDM specifications, the power of a DDM
specification must be defined. For explanatory purposes
a preliminary definition of power will be given before
arriving at the final one. The intuitive notion of the
power of a DDM specification will be based on the set
of distinct configurations that can be expressed under
the specification. That set of configurations embodies
how many and which different data publication and
subscription situations can be represented under the
DDM specification. Let  represent the set of all
distinct configurations possible under some DDM
specification; in particular, let 1.3 and 1516 be the sets
of all distinct configurations possible under the DDM
1.3 and the DDM 1516 specifications respectively. Of
course, without a restriction on the number of
dimensions, 1.3 and 1516 are infinite sets, but they can
still be compared.
For generality, the following definitions refer to DDM
specification 1 (DDM 1) and DDM specification 2
(DDM 2), which are not specific actual DDM
specifications like DDM 1.3 or DDM 1516, but rather
are generic names for any DDM specification. The sets
of configurations possible under DDM 1 and DDM 2
are 1 and 2 respectively.
DDM specification power will be a partial ordering
among DDM specifications based on subset
relationships between their sets of possible
configurations. A preliminary definition of power, in
informal terms, would be that DDM specification 1 is at
least as powerful as DDM specification 2 iff 2  1.
However, a partial ordering based solely on direct
subsets as per the preliminary definition does not allow
the power of DDM specifications with different
structures to be compared. (In fact, DDM 1.3 and DDM
1516 have different structures; recall that DDM 1516
configurations have no routing spaces.) Therefore the
final definition of DDM specification power will go
beyond direct subsets by considering the inclusion of
equivalent configurations.
Informally, DDM specification 1 is at least as powerful
as DDM specification 2 if, for every configuration C 
2, either C itself or some configuration C which is
equivalent to C is  1. To define power more
formally, first define E(C) to be the set of configurations
equivalent to some configuration C. Note that C  E(C)
by definition of equivalence. Then DDM specification
1 is defined to be at least as powerful as DDM
specification 2 iff  configuration C  2  C  C 
1 and C  E(C).4 Under this definition, power is a
partial ordering of DDM specifications. The power
relationship “DDM specification 1 is at least as
powerful as DDM specification 2” will be written DDM
2  DDM 1. Of course, DDM 1 and DDM 2 are DDM
specifications, not sets, so this notation is an
overloading of the subset symbol, but it is suggestive of
the power partial order relationship and thus helpfully
consistent with intuition.
DDM 1 is defined to be more powerful than DDM 2 iff
two conditions hold: (1)  configuration C  2  C 
C  1 and C  E(C) (i.e., DDM 2  DDM 1), and (2)
there exists configuration C in 1 such that for every
configuration C in 2, C not in E(C). The second
condition means that there is at least one DDM 1 that is
not equivalent to any DDM 2 configuration. This
relationship will be written DDM 2  DDM1.
DDM specifications 1 and 2 are equivalent in power iff
DDM 1  DDM 2 and DDM 2  DDM1; this will be
written DDM 1 = DDM 2.
4
Note that even if it is assumed that some
configurations are in some way more “important” than
others, a possibility suggested elsewhere that is not
pursued here, this definition of power remains
consistent. Under the definition, for one DDM
specification to be more powerful than another one, it
must include configurations equivalent to all of the
configurations of the less powerful specification, both
the more and less “important” ones.
3.3
Configuration mappings and transformations
The relative power of two DDM specifications will be
established by considering relations between the
members of their configuration sets. In general, a
relation between two sets A and B is some subset of A 
B [10]. In the case of configuration sets 1 and 2, a
relation between them is a subset of 1  2. Let 1 
2 denote some relation  from configurations in 1 to
configurations in 2. Two types of relations will be
defined. Given relation , 1  2, a mapping is
simply some condition by which configurations C  1
and (C)  2 are related, whereas a transformation is
an algorithm to transform a configuration C  1 into a
configuration (C)  2.
4.
Results
This section contains four theorems concerning the
relative power of DDM 1516 and DDM 1.3. Together
they resolve the question of their relative power and
provide other insights to a federation developer. The
first two are from previous work and are simply stated
here for continuity.
4.1
DDM 1516 is at least as powerful as DDM 1.3
Theorem 1. Under the definition given earlier of power,
DDM 1516 is at least as powerful as DDM 1.3. That
was shown by defining a transformation , 1.3 
1516, that transforms any DDM 1.3 configuration C into
an equivalent DDM 1516 configuration (C). See [7]
for the details of the proof.
4.2
No simple transformation from DDM 1516 to
DDM 1.3 can be valid
Theorem 2. Given transformation  from DDM 1.3
configurations to DDM 1516 configurations, it might be
reasonable to wonder whether a transformation  exists
that is analogous to but the reverse of transformation ,
to transform DDM 1516 configurations to equivalent
DDM 1.3 configurations. The existence or nonexistence of such a transformation  has not been
established. However, there is no transformation  from
DDM 1516 to DDM 1.3 configurations, 1516  1.3,
that is both simple and valid (where simple and valid
have certain formal definitions). The proof considered
all simple transformations  and showing that none are
valid. See [9] for the details of the proof.
4.3
DDM 1.3 is at least as powerful as DDM 1516
Theorem 1 showed that DDM 1516 is at least as
powerful as DDM 1.3, i.e., that DDM 1.3  DDM 1516.
That theorem left open the question of whether DDM
1516 is more powerful that DDM 1.3, i.e., DDM 1.3 
DDM 1516, or equivalent in powerful to DDM 1.3, i.e.,
DDM 1.3 = DDM 1516. Theorem 3 is the penultimate
step toward settling that question; it shows that DDM
1.3 is at least as powerful as DDM 1516, i.e., DDM
1516  DDM 1.3.
This will not be a constructive proof like Theorem 1; no
transformation from DDM 1516 configurations to DDM
1.3 configurations will be given. Theorem 3 is instead
an existence proof. The theorem will depend on a
mapping  (not a transformation) from DDM 1516
configurations to DDM 1516 configurations.
The mapping , 1516  1.3, is defined as follows.
Assume configuration C  1516. Configuration C is a
2-tuple, C = (D, R), with a set of dimensions D = {d1,
d2, …, dk}, |D| = k, and a set of region sets R = {r1, r2,
… rn}, |R| = n. Note that each ri in R is a region set, and
so may comprise > 1 regions, but that does not matter;
what is important is which of these region sets overlap
each other. Overlap is defined in DDM 1516 for region
sets, so if the overlaps between region sets are known,
the details of their regions do not matter.
Define a n  n matrix OC, called the overlap matrix for
C, as follows:
OC =
|
|
|
|
o1,1 o1,2
o2,1
…
on,1
…
…
Define configuration (C)  1.3. Configuration (C) is
a 3-tuple, (C) = ((D), (S), (R))5. Configuration (C)
has a set of dimensions (D) = {(d1), (d2)}, |(D)| = 2
(exactly two dimensions) and a set of routing spaces
(S) = {(s1)}, |(S)| = 1 (exactly one routing space).
The dimensions of the routing space (s1) = ((d1),
(d2)), i.e., s1) is a 2-dimensional routing space.
Configuration (C) also has a set of regions (R) =
{(r1), (r2), …, (rn)}, |(R)| = n .
Note that there is one region (ri) in configuration (C)
for each region set ri in configuration C. However, the
extents in region (ri) do not correspond to the regions
of ri; rather, they represent the overlaps of region set ri
in C. For each region set ri of C, 1  i  n, the extents of
region (ri) of (C), 1  i  n, are defined by two rules as
follows:
Rule (1)
For j = (i + 1) to n: oi,j = 1  (ri) has an extent (ei,j),
oi,j = 0  (ri) has no extent (ei,j).
If extent (ei,j) exists, it has coordinates (2j, 2i) lower
left, (2j + 1, 2i) lower right, (2j, 2i + 1) upper left, 2j +
1, 2i+1) upper right in the routing space s1.
Rule (2)
For j = 1 to (i - 1): oi,j = 1  (ri) has an extent (ei,j),
oi,j = 0  (ri) has no extent (ei,j).
If extent (ei,j) exists, it has coordinates (2i, 2j) lower
left, (2i + 1, 2j) lower right, (2i, 2j + 1) upper left, 2i +
1, 2j +1) upper right in the routing space s1.
o1,n |
|
|
on,n |
For i  j, oi,j = 1 iff ri and rj overlap in C
oi,j = 0 otherwise.
For i = j, oi,j = 0.
Though the overlap matrix OC is clearly constructable
for any configuration C, for example by exhaustive
testing of each pair of region sets for overlap, this
theorem does not say how to construct it. It is a
determinable fact that each pair of region sets in
configuration C do, or do not, overlap. The overlap
matrix OC is simply an encoding of the overlap status of
each of those pairs of region sets.
The function-style notation (R) was chosen for its
intuitive meaning at two levels; (R) is part of the
configuration (C) mapped to by , and it is in fact
mapped from the components of R of configuration C.
On the other, though (D) and (S) are also part of the
configuration (C) mapped to by , they are not mapped
from the components of D or S in configuration C as the
notation suggests. Despite this, the function-style
notation was used to make clear that (D) and (S) are
part of the configuration (C). The same explanation
applies to the components of (D) (e.g., (d1)) and (S)
(e.g., (s1)).
5
(2j, 2i + 1)
(2j, 2i)
(2j + 1, 2i + 1)
(2j + 1, 2i)
Extent for Rule (1) iff oi,j = 1
(2i, 2j + 1)
(2i + 1, 2j + 1)
(2i, 2j)
(2i + 1, 2j)
Extent for Rule ( 2) iff oi,j = 1
Figure 1. Coordinates of extents defined by Rules (1) and (2) of mapping .
Some explanation of the rules is in order. Rule (1)
produces extents lined up along dimension (d1) and
Rule (2) produces extents lined up along dimension
(d2)6. Figure 1 illustrates the coordinates of the extents
produced by each rule7. Although there are two rules,
they do not define more than one extent (ei,j) for
particular values of i and j for a single region (ri)
because the values of j for the rules, j = (i + 1) to n for
Rule (1) and j = 1 to (i - 1) for Rule (2), are disjoint.
Rules (1) and (2) omit i = j because by definition of the
overlap matrix OC, i = j  oi,j = 0, so no extent will be
present for i = j anyway. An extent (ei,j) of region (ri)
in configuration (C) represents the fact that oi,j = 1,
which in turn represents the fact that region set ri
overlaps region set rj in configuration C. Rule (1) may
define that extent for i > j, whereas Rule (2) may define
it for i < j. The fact that there will be only one extent
for a single region at a particular location (2i, 2j) in
routing space (s1) means that if there are two extents at
a particular location, then they are from two different
regions and those two regions therefore overlap in (C).
The intent of the rules is to map region sets that overlap
in C to regions that overlap in (C), and vice versa.
Informally, suppose region sets ra and rb overlap in
DDM 1516 configuration C, with a < b. The overlap
matrix OC will have oa,b = 1 and ob,a = 1. In DDM 1.3
configuration (C), region (ra) will by Rule (1) have an
extent (ea,b) at location (2b, 2a)8 and region (rb) will
by Rule (2) and have an extent (eb,a) also at location
(2b, 2a) by Rule (2), causing (ra) and (rb) to overlap.
The fact that C and (C) are equivalent will be shown
formally later, but first two examples are given to
illustrate the idea.
Example. Assume configuration C  1516. Assume C
has region sets R = {r1, r2, r3, r4}, so n = |R| = 4.
Assume that the region sets overlap as follows 9: r1
overlaps r2, r1 overlaps r3, and r2 overlaps r4. No other
region sets overlap.
6
By convention, the subscripts of the elements of
matrix OC have their lowest values in the upper left,
whereas the lowest values of the coordinate axes of
routing space (s1) of configuration (C) are in the lower
left. This has no real significance, but the relative
positions of the extents to be defined in the coordinate
space of (C) will be reflected with respect to the
relative positions of the corresponding 1s in the overlap
matrix OC.
7
Rules (1) and (2) may define extents with coordinates
as large as 2n. In any actual implementation of HLA
1.3, an RTI parameter axis upper bound specifies the
largest coordinate an extent may have on a dimension.
It may seem that there is an implicit assumption in
Theorem 3 that 2n < axis upper bound. However,
Theorem 3 is concerned with the general structure of the
DDM specifications, not with specific implementations
and moreover, the assumption 2n < axis upper bound is
not likely to be violated in any real federation.
The overlap matrix OC for C will be:
OC =
|
|
|
|
0
1
1
0
1
0
0
1
1
0
0
0
0
1
0
0
|
|
|
|
The location of an extent’s lower left corner will be
used as a shorthand for stating the location of the extent
as a whole. As defined by Rules (1) and (2), all of the
extents defined by mapping  are squares with axisparallel sides one unit in length. Because that is true in
all cases, the coordinates of the lower left corner suffice
to specify an extent’s location.
9
Clearly, the overlap relation between region sets is
transitive, so ri overlaps rj  rj overlaps ri. Only one of
each pair is listed.
8
Region set ri  R
Region (ri)  (R)
i=
1
(1)
(2)
2
(1)
(2)
3
(1)
(2)
4
(1)
(2)
Key for Table 1
(ei,j) at (x, y)

-
Extents of region (ri)  (R)
j=
2
3
oi,j = 1
oi,j = 1
(e1,2) at (4, 2)
(e1,3) at (6, 2)
oi,j = 0
oi,j = 0

oi,j = 0
oi,j = 0

oi,j = 1
oi,j = 0
(e4,2) at (8, 4)

1
oi,j = 0
oi,j = 1
(e2,1) at (4, 2)
oi,j = 1
(e3,1) at (6, 2)
oi,j = 0

4
oi,j = 0

oi,j = 1
(e2,4) at (8, 4)
oi,j = 0

oi,j = 0
-
oi,j considered by Rules (1) and (2), extent defined at (x, y), because oi,j = 1
oi,j considered by Rules (1) and (2), no extent defined, because oi,j = 0
oi,j not considered by Rules (1) and (2), because j  i for Rule (1) or j  i for Rule (2)
Table 1. Example extents for (C).
(ds)
Routing space (s1)
10
9
8
7
6
5
4
(e2,4)(r2)
(e4,2)(r4)
3
2
(e1,2)(r1) (e1,3)(r1)
(e2,1)(r2) (e3,1)(r3)
1
1
2
3
4
Figure 2. Example extents for (C) in routing space .
5
6
7
8
9
10
(d1)
Applying Rules (1) and (2) for each regions set ri  R
of C, 1  i  4, defines a total of 6 extents in the 4
regions in (R) of (C). Those extents are summarized
in Table 1, where each extent defined is identified and
the coordinates of its lower left corner are given.
The extents defined for the example are illustrated in
Figure 2. Note that in the figure, each square
corresponds to two overlapping extents.
By the definitions of DDM specification power given
earlier, DDM 1.3 is at least as powerful as DDM 1516
iff  configuration C  1516  configuration (C) 
(C)  1.3 and (C)  E(C).
The mapping  defined above will be used to satisfy this
definition by showing that the equivalent configurations
exist. Given a configuration C  1516 and
configuration (C)  1.3 corresponding to C as defined
by mapping , it will be shown that (C)  E(C) by
showing that for any two region sets ra and rb  R of C
 1516, and the corresponding (ra) overlaps (rb) 
(R) of (C) in 1.3, ra overlaps rb iff (ra) overlaps (rb).
Theorem 3. For every DDM 1516 configuration C there
exists an equivalent DDM 1.3 configuration (C), i.e.,
for every C  1.3 there exists (C) such that (C) 
1516 and (C)  E(C). Therefore DDM 1.3 is at least as
powerful as DDM 1516, i.e., DDM 1516  DDM 1.3.
Proof. Assume C  1516 and (C)  1.3, where (C)
corresponds to C as defined by mapping . It must be
shown that for any two region sets ra and rb  R of C 
1516, and the corresponding (ra) overlaps (rb)  (R)
of (C) in 1.3, ra overlaps rb iff (ra) overlaps (rb).
(Only if) Assume region set ra overlaps region set rb.
Without loss of generality, assume a < b. By the
assumption that a < b and the definition of the overlap
matrix OC, oa,b = 1 and ob,a = 1. Because oa,b = 1, by
Rule (1) region (ra) will have an extent (ea,b) at
location (2b, 2a) in the routing space (s1). Because ob,a
= 1, by Rule (2) region (rb) will have an extent (eb,a)
also at location (2b, 2a) in the routing space (s1).
Extents (ea,b) and (eb,a) have the same coordinates on
the same dimensions, so they overlap. Therefore
regions (ra) and (rb) overlap.
(If) Assume (ra) overlaps (rb), where (ra), (rb) 
(R) of (C)  1.3. Without loss of generality assume a
< b. Consider the possible extents of (ra). By Rule
(1), (ra) may have these extents parallel to dimension
(d1): (ea,a+1) at (2(a+1), 2a), (ea,a+2) at (2(a+2), 2a),
…, (ea,n) at (2n, 2a). By Rule (2), (ra) may also have
these extents parallel to dimension (d2): (ea,1) at (2a,
2), (ea,2) at (2a, 4), …, (ea,a-1) at (2a, 2(a-1)).
Similarly, consider the possible extents of (rb). By
Rule (1), (rb) may have these extents parallel to
dimension (d1): (eb,b+1) at (2(b+1), 2b), (eb,b+2) at
(2(b+2), 2b), …, (eb,n) at (2n, b). By Rule (2), (rb)
may also have these extents parallel to dimension (d2):
(eb,1) at (2b, 2), (eb,2) at (2b, 4), …, (eb,b-1) at (2b, 2(b1)). Given that a < b and considering the possible
extents of (ra) and (rb), there is only one extent
location in common where (ra) and (rb) could overlap;
that location is (2b, 2a), which is the location of extent
(ea,b)  (ra), defined by Rule (1), and (eb,a) in (rb),
defined by Rule (2). Figure 3 shows all of the possible
extents of (ra) and (rb) and their possibly overlapping
extents.
Because (ra) and (rb) overlap by assumption, then they
must have the extents (ea,b)  (ra) and (eb,a)  (rb).
For extent (ea,b) to have been defined by the mapping 
(Rule (1), in particular), entry oa,b must = 1 in the
overlap matrix OC. By the definition of OC, oa,b = 1
implies that ra overlaps rb (ra, rb  R of C  1516).
For every configuration C  1516, C and (C)  1.3 are
equivalent. Thus,  configuration C  1516  a
configuration (C)  (C)  1.3 and (C)  E(C).
Therefore, DDM 1.3 is at least as powerful as DDM
1516, i.e., DDM 1516  DDM 1.3. ■
4.4
DDM 1.3 and DDM 1516 are equivalently
powerful
It is now a simple matter to settle the question of the
relative power of DDM specifications 1.3 and 1516.
Theorem 4. DDM 1.3 and DDM 1516 are equivalently
powerful, i.e., DDM 1.3 = DDM 1516.
Proof. DDM 1.3  DDM 1516 by Theorem 1 and
DDM 1516  DDM 1.3 by Theorem 3. Therefore,
DDM 1.3 = DDM 1516. ■
(d2)
Routing space (s1)
2n
...
2(b+1)
Rule (1)
2b
Possible extents of (rb)
Overlapping extents
at (2b, 2a)
2(b-1)
2(a+1)
Rule (1)
Possible extents of (ra)
2a
Rule (2)
...
4
Rule (2)
2(a-1)
2(b+1)
2b
2(b-1)
...
2(a+1)
4
2a
2
2(a-1)
2
...
2n
(d2)
Figure 3. All possible extents of (ra) and (rb) under Rules (1) and (2).
5.
Conclusions
This section summarizes the main results, discusses how
they may apply to federation developers, and briefly
identifies some related work.
5.1
Theorem 2. No simple transformation from DDM 1516
configurations to DDM 1.3 configurations can be valid.
This was proven by showing that all simple
transformations from DDM 1516 configurations to
DDM 1.3 configurations fail to produce equivalent
configurations.
Summary
The differences in the definitions of DDM 1.3 and
DDM 1516, including the elimination of routing spaces
from the latter, have not affected its power to express
and relate data production and requirements. This was
shown by using formal methods to obtain several
results.
Two theorems have been previously reported.
Theorem 1. DDM 1516 is at least as powerful, in terms
of relating federates’ data production and requirements,
as DDM 1.3. This was proven by exhibiting a simple
transformation that, given any DDM 1.3 configuration,
constructs an equivalent DDM 1516 configuration.
Two new theorems were given here.
Theorem 3. DDM 1.3 is at least as powerful as DDM
1516. This was proven by showing that for every DDM
1516 configuration there exists an equivalent DDM 1.3
configuration.
Theorem 4. DDM 1.3 and DDM 1516 are equivalently
powerful. This followed from Theorems 3 and 4.
5.2
Implications for federation developers
Theorem 1 (DDM 1.3  DDM 1516) and Theorem 3
(DDM 1516  DDM 1.3) differ in a way that is relevant
to HLA federation developers. Theorem 1 is a
constructive proof; it is based on a transformation
between DDM configuration sets and thus gives an
algorithm that can be used to construct DDM 1516
configurations equivalent to DDM 1.3 configurations.
A federation developer charged with converting an
existing HLA federation from HLA 1.3 to HLA 1516
could apply transformation  of Theorem 1 to convert
the federation’s DDM design. One reasonably
straightforward approach to doing so is to define DDM
dimensions in the RTI initialization file for the HLA
1516 federation based on the HLA 1.3 federation’s
DDM dimensions, as renamed according to
transformation . The federates of the HLA 1516
federation, when creating and manipulating DDM
regions and extents during a federation execution, use
the renamed DDM 1516 dimensions corresponding to
the DDM 1.3 dimensions they had previously used.
Theorem 3 (DDM 1516  DDM 1.3) is an existence
proof. Based on a mapping  between DDM
configuration sets, it shows that a DDM 1.3
configuration equivalent to each DDM 1516
configuration must exist, but does not say how to
construct them. Therefore, mapping  is of little help to
a federation developer charged with converting an
existing HLA 1516 federation to HLA 1.3. Fortunately,
such conversions (from HLA 1516 to HLA 1.3) are
likely to be undertaken less often than the reverse.
5.3
Related work
In related work these results have been obtained:
1. DDM matching10 is not NP-complete [8].
2. One approach to DDM connecting11 is NPcomplete [8]
3. Lower bounds on the time required for a single
DDM matching query and the overall DDM
matching process during a federation execution are
in (log n) and (n log n) respectively [7].
10
DDM matching is the process of determining which
update and subscription regions overlap.
11
DDM connecting is the process of establishing interfederate data communications in the federation based on
which regions overlap.
6.
References
[1] J. S. Dahmann, F. Kuhl, and R. Weatherly.
“Standards for Simulation: As Simple as Possible
But Not Simpler: The High Level Architecture for
Simulation,” Simulation, Vol. 71, No. 6, pp. 378387, December 1998.
[2] Defense Modeling and Simulation Office.
“Department of Defense High Level Architecture
Rules, Version 1.3,” February 5 1998, Online
document at http://hla.dmso.mil/hls/tech/rules/.
[3] Defense Modeling and Simulation Office.
“Department of Defense High Level Architecture
Object Model Template, Version 1.3,” February 5
1998, Online document at
http://hla.dmso.mil/hls/tech/omtspec/.
[4] Defense Modeling and Simulation Office.
“Department of Defense High Level Architecture
Interface Specification, Version 1.3,” April 2 1998,
Online document at
http://hla.dmso.mil/hls/tech/ifspec/.
[5] F. Kuhl, R. Weatherly, and J. Dahmann. Creating
Computer Simulation Systems, Prentice Hall,
Englewood Cliffs NJ, 1999.
[6] Institute of Electrical and Electronic Engineers.
“IEEE P1516.1/D5 Draft Standard for Modeling
and Simulation (M&S) High Level Architecture
(HLA) – Federate Interface Specification”, IEEE
Standards Draft, DRAFT 5, March 17 2000.
[7] M. D. Petty. “Geometric and Algorithmic Results
Regarding HLA Data Distribution Management
Matching”, Proceedings of the Fall 2000
Simulation Interoperability Workshop, Orlando FL,
September 17-22 2000.
[8] M. D. Petty and K. L. Morse. “Computational
Complexity of HLA Data Distribution
Management”, Proceedings of the Fall 2000
Simulation Interoperability Workshop, Orlando FL,
September 17-22 2000.
[9] M. D. Petty. “Comparing the Power of the HLA
Data Distribution Management Specifications 1.3
and 1516”, Proceedings of the Second Conference
on Simulation Methods and Applications, Orlando
FL, October 29-31 2000, pp. 214-223.
[10] A. J. Pettofrezzo. Elements of Finite Mathematics,
Orange Publishers, Winter Park FL, 1988.
7.
Acknowledgements
Dr. Katherine L. Morse (Epsilon Systems Solutions)
explained details of the differences between DDM 1.3
and DDM 1516 early in this work. Dr. Richard M.
Fujimoto (Georgia Institute of Technology) made a
suggestion that improved the comparison of DDM
specification power. Their assistance is gratefully
acknowledged.
Author’s Biography
MIKEL D. PETTY is Chief Scientist of the Virginia
Modeling, Analysis & Simulation Center at Old
Dominion University. Dr. Petty was previously an
Assistant Director of the Institute for Simulation and
Training at the University of Central Florida. He
received a Ph.D. from the University of Central Florida
(UCF) in 1997, a M.S. from UCF in 1988, and a B.S.
from the California State University, Sacramento, in
1980, all in Computer Science. He has worked in
modeling and simulation since 1990 and has interests in
simulation interoperability, computer generated forces,
multi-resolution simulation, and applications of
computational geometry. During 10 years of research
he has published over 80 papers in those areas and has
been awarded over 35 research contracts. He is
currently a member of a National Research Council
committee on modeling and simulation.