We study the membership of timed words for timed automata, an NP-complete problem , from the approximation point of view. We introduce a timed edit distance between timed words and study how to distinguish an accepted timed word from a timed word which is -far from the language of accepted words. We follow the property testing approach with this new distance between timed words. Samples are taken following the weighted time distribution
where the probability to choose a letter is proportional to its relative time delay or duration which we call itsweight. The tester takes samples which are factors of weight at least , taken from the distribution . Such samples can also be taken from a stream of timed words, without storing the entire input.
We consider timed automata with linear constraints  and construct the associated region automata with states. Let be the graph whose nodes are the connected components of the region automata, which we assume to be thick or of non-vanishing entropy . Let be the maximum value of the time constraints, let be the diameter of . We require independent samples of , each of weight . It guarantees that if a timed word of total weight is -far from the language of the timed automaton, it will be rejected with constant probability, i.e. independent of .
Let be a path of , i.e. a sequence of connected components. Given a path and samples from , definition 4 specifies when these samples are compatible with . The tester checks if there is a such that the samples are compatible for this . It rejects if no is compatible with the samples.
The main result, theorem 1, presents the analysis of the tester. First, lemma 2 guarantees that a word of the language of the timed automaton is accepted by the tester. To prove that an -far timed word is rejected with constant probability, we construct a corrector for a connected component (lemmas 3 to 5) of the region automaton and extend it to a sequence . We then use the corrector (lemmas 6 and 7) to prove the main result.
In the second section, we fix our notations of timed automata and recall the definitions of thick and thin components. In the third section, we define the timed edit distance in the property testing context. In the fourth section, we define our membership tester and give its analysis.
2 Timed automata
Let be a finite set of variables, called clocks. A clock valuation over is a mapping that assigns to each clock a time value. For each , the valuation is defined by . The set of clock constraints over , denoted by , is the set of conjunctions of atomic constraints of the form: or where , and . We write when the clock valuation satisfies the clock constraint and we note the set of clock valuations satisfying . For a subset of , we denote by the reset valuation such that for each , and for each , .
A timed automaton is a tuple where is a finite set of events, is a finite set of locations, is the set of initial locations, is a set of final locations and is a finite set of transitions.
A transition is a triple
where , i.e. is the clock constraint, and is the set of clocks which are reset in the transition.
A path in is a finite set of consecutive transitions: where and where , and , for each . The path is said accepting if it starts in an initial location and ends in a final location . A state is a tuple , a location and a valuation of the clocks . Let be the maximum value of the constant in the atomic constraints.
2.1 Timed words
A timed word is a sequence where and is an increasing sequence of values in . For timed word , let be the sequence of letters .
A run of the automaton through the path is a sequence:
where for is a timed word and a sequence of clock valuations such that:
We read for a period of time such that
and if , if .
The define the resets on each transition. A local run is a run where
can be arbitrary.
The label of the run is the timed word , also written
to use the relative time delays for and . Such a run will be denoted by .
If the path is accepting then the timed word is said to be accepted by the timed automaton. The set of all finite timed words accepted by is denoted by .
Given a timed word , a factor is a subsequence starting in position . Its weight is and its relative weight is:
2.2 Region automata
Let be a set of clocks and be a finite set of constraints over . A finite partitioning of the set of valuations is a set of regions for the constraints if the following compatibility conditions are satisfied:
is compatible with the constraints : for every constraint , and every , either or ,
is compatible with elapsing of time: for all , if there exists some and such that , then for every , there exists some such that ,
is compatible with resets: for all , for every subset , if , then .
defines an equivalence relation over valuations:
if for each region of , .
From a set of regions one can define the time-successor relation: a region is a time-successor of a region if for each valuation , there exists a such that .
Let be a timed automaton with set of constraints and be a finite set of regions for . The region automaton is the finite automaton defined by:
the set of states is ,
the initial states are , where is the region containing the valuation assigning to each clock,
the final states are ,
there is a transition whenever there exists a transition in and a region such that satisfies and .
For a run of the automaton of the form:
let its projection to be the sequence
where is the sequence of regions such that for each . From the definition of the transition relation for , it follows that the projection is a run of over .
Given some connected component of the region automaton, a timed word is -compatible if there exists a local run such that its projection is in . If there is a run , where is an initial location and the initial valuation, we say that is -compatible from the origin.
As is a finite automaton, for every timed automaton for which we can construct a set of regions, we can decide reachability properties using the region automaton construction. It is easy to see that for a timed automaton with diagonal-free constraints (i.e. the only atomic constraints are of the form ), it is possible to construct a set of regions. Alur and Dill have shown 
that the size of the region automaton can be exponential in the number clocks.
2.3 Robustness for timed systems
Timed automata assume perfect clocks and perfect precision. The relaxation to a robust acceptance has been introduced in  where the reachability remains undecidable. Imperfect clocks with a drift are considered in
[20, 4], and uncertainty in the guards is introduced in .
A survey of the robustness in timed automata is presented in . We introduce a different approach, with a natural distance between timed words which extends to a distance between a timed word and a language of timed words. We then show that the approximate membership problem becomes easy, in this setting.
2.4 Thin and thick components
For a strongly connected component, a limit cycle is a trajectory such that there is a state and a timed word of positive length such that . A progress cycle is a cycle where every clock is reset on some edge of the cycle. A forgetful cycle is a subcase where for all state on the cycle, for all we can find a word such that:
By extension, given two states and of the region automaton, we can use the forgetful cycle to link two states and . Connect first to the forgetful cycle , follow and then connect to . We can then connect and .
In , the existence of a forgetful cycle is proved to be equivalent to the existence of a limit cycle, introduced in , and also equivalent to an entropy greater than . We assume that all the connected components are thick, i.e. admit forgetful cycles, and we use this hypothesis in a fundamental way.
3 Property Testing
For approximate decision problems, the approximation is applied to the input
and suppose a distance between input structures. An
-tester for a property accepts all
inputs which satisfy the property and rejects with high probability all inputs which
are -far from inputs that satisfy the property.
The approximation on the input
was implicit in Program Checking [8, 9, 21],
in Probabilistically Checkable Proofs (PCP) , and explicitly studied for graph properties under the context of
property testing .
These restrictions allow for sublinear algorithms and even time algorithms, whose complexity only depends on . Let be a class of finite structures with a normalized distance between structures, i.e. lies in . For any , we say that are -close if their distance is at most . They are -far if they are not -close. In the classical setting, the satisfiability of a property is the decision problem whether satisfies for a structure and a property . A structure -satisfies , or is -close to if is -close to some such that satisfies . We say that is -far from if is not -close to .
Definition 1 (Property Tester )
An -tester for a property is a randomized
algorithm such that, for any structure as input:
(1) If satisfies , then accepts;
(2) If is -far from , then rejects with probability at least .111The constant can be replaced by any other constant by iterating the -tester and accepting iff all the executions accept
A query to an input structure depends on the model for accessing the structure. For a word , a query asks for the value of , for some . For a tree , a query asks for the value of the label of a node , and potentially for the label of its -th successors, for some . For a dense graph a query asks if there exists an edge between nodes and . The query complexity is the number of queries made to the structure. The time complexity is the usual definition, where we assume that the following operations are performed in constant time: arithmetic operations, a uniform random choice of an integer from any finite range not larger than the input size, and a query to the input.
A property is testable, if there exists a randomized algorithm such that, for every real as input, is an -tester of whose query and time complexities depend only on (and not on the input size).
Property testing of regular languages was first considered in  for the
where the Hamming distance between two words is the
minimal number of character substitutions required
to transform one word into the other.
The (normalized) edit distance between two words (resp. trees) of size
is the minimal number of insertions, deletions
and substitutions of a letter (resp. node) required to transform one word (resp. tree)
into the other, divided by .
The testability of regular languages on words and trees was studied in 
for the edit distance with moves, that
considers one additional operation:
moving one arbitrary substring (resp. subtree) to another position in one step.
This distance seems to be more adapted in the context of property testing, since their
tester is more efficient and simpler than the one of ,
and can be generalized to tree regular languages.
A statistical embedding of words
which has similarities with the Parikh mapping  was developped in .
This embedding associates to every word a sketch of constant size (for fixed )
which allows to decide any property given by some regular grammar or even some
In this paper we introduce a new distance on timed words and apply the property testing to this distance.
3.1 Timed edit distance
The classical edit distance on words is a standard measure between two words
An edit operation is a deletion, an insertion or
a modification of a letter. The absolute edit distance is the minimum number
of edit operations to transform into and the relative edit distance is the
absolute edit distance divided, by . We mainly use the relative distance, a value
between and .
Consider the timed edit operations:
Deletion of has cost ,
Insertion of has cost ,
Modification of into has cost .
The absolute timed edit distance between two timed words and is if there is a transformation from into such that is the minimum sum of the costs.
The relative timed edit distance between two timed words and , is
If is the maximum time of of , is also .
Two words are -close if
. The distance between a word and a language of timed words is defined as
Examples: the absolute distance between and is .
The absolute distance between and is . The absolute distance between and
3.2 Other distances
The edit distance has been generalized to a weighted edit distance where a fixed weight is associated to each letter and to
each pair of letters. The cost of an insertion or deletion of a letter is the weight of the letter and
the cost of a modification of by is the cost of the pair . For the timed edit distance, the costs are not fixed and depend on the time.
, this distance is generalized to a vector whose first component captures the classical edit distance and the second component measures the maximum difference of the time intervals. It emphasizes the classical edit distance between the words. As an example, the distance of between the timed words and is the vector as the edit distance is and the maximum time difference is . In our framework, the timed edit distance is : we remove of the first timed word at the cost and add it after for the same cost.
3.3 Algorithm for the timed edit distance
The timed edit distance between two words is computable in polynomial time by just generalizing the classical algorithm  for the edit distance. Let be the array where
appears on the top row () starting with the empty character , appears on the first column starting with the empty character as in Figure 1.
For each letter , let be the relative time . The value
for is the timed edit distance between the prefix of of length and the prefix of of length .
Let be the time difference between and if the letter symbols are identical, otherwise. It is the timed edit distance between two letters.
For , there is a simple recurrence relation between and , which reflects 3 possible transformations: deletion of , deletion of or edition of the last letters. Hence:
In the example of Figure 1, the timed edit distance is 10, and we can trace the correct transformations by tracing the Minimums for each : in this case, we erase and reinsert it at the right place.
4 Testing membership of timed words
Given a timed word , we want to approximately
decide if is in language , i.e. decide if is accepted or if
is -far from a language , for the timed edit distance, i.e. if for . A query is specified by a weight and returns a factor of the word of weight at least taken according to the distribution , introduced in section 4.1. This is the classical approximation taken
in Property Testing.
Assume the region automaton has some strongly connected components for and some transient states . Let be a path in the graph of the connected components of the region automaton from the initial state . Two connected components and are connected if there is a transition in the region automaton between a state and . For example is a sequence of transient states and connected components. Let us specify the state used in each component when a run leaves the component . It is a distinguished state and we write :
Let us define an extended component as a component with a prefix of transient states and a distinguished state as a suffix. In our example,
and and . The concatenation
, i.e. . Let
the general sequence after the introduction of the extended components.
4.1 Samples and Compatibility
The weighted time distribution selects a position in a word , i.e. a letter , proportionally to its weight :
To efficiently choose such a , we
choose a uniform real value
and find such that by dichotomy. We
first compare and and find the exact after at most steps. A -sample of is a factor of weight for the smallest if it exists. If we reach the end of , we select a -sample of weight less than . We use the absolute values to efficiently select a sample, and the relative values for its weight.
We select independent samples of weight at least according to , which we order as . Notice that two samples and of weight , where , may overlap or may be identical. Recall that a timed factor is -compatible if
where and .
We now introduce the central notion of compatibility for an arbitrary sequence and a sequence of possibly overlapping ordered factors of a word . We can write as:
For each factor we examine if it could start from some or of .
The sample is compatible for by cases:
Transient states, for example from to for
if and . The first letter of reaches a state of , the last letter reaches from , the letter before the last one reaches from the state .
The sample is compatible from to if there is a state such that is compatible from to .
This definition can be generalized when the starting state is either a state or a component .
If two factors overlap, consider their union, i.e. the largest factor which contains both. It must be compatible for .
The sequence of ordered factors , where , with possible overlap of a word is -compatible if each is compatible for from some state or component to some other state or component. The order of these states follows the order of .
The sequence of ordered factors with possible overlap of a word is compatible if there exists a such that is -compatible
The tester will take samples , each is of weight at least , which we order
according to their position in .
4.2 Compatibility properties
Let be a timed word accepted by a timed automaton . What can be said about the compatibility of samples ?
If , then for all and for all ordered -samples there is a such that is -compatible.
If , there is a run for , i.e. a sequence defined by the run from the origin state to some state . If two samples overlap, consider their union. The independent samples are -compatible.
Consider the following decision procedure to decide if is -compatible. We first enumerate all pairs such that
is compatible for from to and then use algorithm . Let be a factor and a path:
Enumerate all pairs where
and are either a transient state of or a state of a connected component and accept if
is compatible for from to .
solves a system of linear constraints for each and accepts if there is a solution, where the variables represent the clock valuations in the states . We extend to which takes the ordered samples instead of a single .
Compatibility Algorithm . Choose for each some pair using Algorithm and accept if the choices of the witness the compatibility of for , i.e. follow the order of with the overlaping condition.
Given a timed automaton let be the language accepted.
Let be the region automaton with states, and let be the maximal value used in the time constraints. We first generate all the such as which include connected components and transient states and
the corresponding sequences of extended components.
We first define a Tester along a and the final Tester considers all possible .
Word Tester along a path
Input: timed word , , ,
Output: Accept or Reject
1. Sample independent factors of weight of for the weighted time distribution . If two samples overlap, we merge them and take a new sample.
2. Accept if accepts else Reject.
We then obtain the general tester for a regular timed language .
Word Tester for
Input: word , ,
Output: Accept or Reject
1. Construct all the of the region automaton , starting in the initial state,
2. For each , apply the Word Tester along ,
3. If there is a
such that Word Tester along accepts, then Accept
We have to verify the two properties of a Tester, given in definition 1.
If then the Word Tester for always accepts.
Consider a run of the automaton , labeled by . There exists a of
at most extended components such that all the
factors of weigth are compatible for some . For any distribution of ordered factors , , they are
-compatible. Hence the Tester accepts.
The more difficult task is to show that if is -far from then the Tester will reject with constant probability.
Equivalently, we could show the contrapositive, i.e. if the Tester accepts with constant probability, then is -close to .
We construct a corrector for in order to prove this property. A corrector is a non deterministic process which transforms an incorrect into a correct with timed edit operations. We first describe a corrector for a given component in section 4.4.1, for an extended component in section 4.4.2 and for an extended path in section 4.4.3. In the last case, we decompose a word into factors which we will correct for each .
4.4.1 Corrector for a component
For all pairs of states which is a thick component and for all valuations , there exists a timed word such that .
As is a thick connected component, there is a forgetful cycle and a path from to a state
on the cycle and a path from to . For all valuations there is a
and a timed word such that and similarly for
all valuations there is a
and a timed word such that .
As is a forgetful cycle, there is a word such that .
Hence is the desired path, as
We decompose any word into compatible factors for the component and introduce the notion of a weighted cut. The sum of the weights of the different cuts is the key parameter of the decomposition.
A weighted cut for in a timed word is a decomposition of into the longest possible compatible prefix and a distinct suffix , i.e. , such that is compatible for but is not compatible for .
Notice that we start from an arbitrary state of where . We can’t extend the run because of , or or both. The position which satisfies the conditions of the decomposition is also called a cut. We distinguish between a weak cut and a strong cut. A cut is strong if the single letter is not compatible with , i.e. there is no run for any state of . A cut is weak if it is not strong. We repeat the analysis for and it is therefore important to find a local correction between in state with some and starting in state with any . We correct the weak and the strong cuts using lemma 3.
In a weak cut, let be the longest compatible timed word from some state . Lemma 3 provides a link before the letter . The edit cost is then , because a path which includes a forgetful cycle is made of three segments of length at most and therefore of cost less than .
In a strong cut, is not compatible but there may exist , such that is compatible. The correction cost is . If it is not the case, we erase the letter and the cost is .
In a strong cut, the cost of
the correction can be high, of the order of .
The distinction is important, as a sample which contains
a strong cut is incompatible whereas a sample which contains a weak cut may be compatible. We pick any state when we start reading a sample : it may differ from the state assigned by the run on when we reach . Hence we may not have a cut.
A sample which contains two consecutive weak cuts is incompatible. At the first cut we consider all possible states of and choose the state for which the longest possible word is compatible. All the runs block before the second cut or precisely at the second cut. Hence the sample is incompatible.
We then write: where is of definition 5 and is the cost of the correction. We iterate this process on starting in an arbitrary state and . We write and instead of . We obtain an algorithmic decomposition, written as:
if there are cuts of total value , for the decomposition of .
Each is the largest compatible factor of from the position of the th cut.
Let the total weight of the strong cuts and the total weight of the weak cuts.
If of weight has cuts of total weight for , then is -close to the regular language .
Lemma 3 indicates that we can always correct a cut and start from an arbitrary new state.
For each cut of weight , we have a correction of weight at most . Hence
a total relative distance of to the language of .
By the contraposition of lemma 4,
if of weight is -far from , then , i.e. large.
Suppose we take some sample of weight at least with the weighted time distribution . We show that the probability that is incompatible is large. We need to show that the total weight of incompatible factors is large when the weight of each is greater than . Let be the number of in the decomposition of along the cuts, whose weight is larger than and less than , i.e. :
where is the weight of . By definition is the total number of cuts. We need to find a bound such that the sum of the costs of the associated cuts: