1: \begin{abstract}
2: One way of studying a relational structure is to investigate functions
3: which are related to that structure and which leave certain aspects of
4: the structure invariant. Examples are the automorphism group, the
5: self-embedding monoid, the endomorphism monoid, or the polymorphism
6: clone of a structure.
7: Such functions can be particularly well understood when the relational
8: structure is countably infinite and has a first-order definition in another relational structure which has a finite language, is totally ordered and homogeneous, and has the Ramsey property. This is because
9: in this situation, Ramsey theory provides the combinatorial tool for
10: analyzing these functions -- in a certain sense, it allows to
11: represent such functions by functions on finite sets.
12:
13:
14: This is a survey of results in model theory and theoretical computer
15: science obtained recently by the authors in this context. In model
16: theory, we approach the problem of classifying the reducts of countably infinite ordered homogeneous
17: Ramsey structures in a finite language, and certain decidability questions connected with
18: such reducts. In theoretical computer science, we use the same
19: combinatorial methods in order to classify the computational
20: complexity for various classes of infinite-domain constraint
21: satisfaction problems. While the first set of applications is
22: obviously of an infinitary character, the second set concerns
23: genuinely finitary problems -- their unifying feature is that the same
24: tools from Ramsey theory are used in their solution.
25:
26: \end{abstract}
27: