Laj Miko, Boja´ Boja´nczyk, Boja´nczyk
2010 unpublished
Data words and data trees appear in verification and XML processing. The term "data" means that positions of the word, or tree, are decorated with elements of an infinite set of data values, such as natural numbers or ASCII strings. This talk is a survey of the various automaton models that have been developed for data words and data trees. A data word is a word where every position carries two pieces of information: a label from a finite alphabet, and a data value from an infinite set. A data
more » ... ree is defined likewise. As an example, suppose that the finite alphabet has two labels request and grant, and the data values are numbers (interpreted as process identifiers). A data word, such as the one below, can be seen as log of events that happened to the processes. request 1 request 2 request 1 request 7 request 7 request 3 grant 1 grant 3 ... The example with processes and logs can be used to illustrate how data words are used in verification. In one formulation, verification is a decision problem with two inputs: a correctness property, and a scheduling mechanism. The correctness property is some set K of "correct" logs. Often in verification, one talks about infinite words. For example, we might be interested in the following liveness property: "For every position with label request, there exists a later position with label grant and the same data value." The scheduling mechanism is represented as the set L of logs consistent with the mechanism. For example, a rather unwise scheduler would result in the following logs: "Every position with label grant carries the same data value as the most recent position with label request." The verification problem is the question: does the scheduling mechanism guarantee the correctness property? (In the example given here, the answer is no.) In terms of languages, this is the question if the difference L − K is nonempty. To complete the description of the 1998 ACM Subject Classification: PREFERRED list of ACM classifications.