Recurrence properties of systems and associated sets of integers that suffice
for recurrence are classical objects in topological dynamics. We describe
relations between recurrence in different sorts of systems, study ways to
formulate finite versions of recurrence, and describe connections to
combinatorial problems. In particular, we show that sets of Bohr recurrence
(meaning sets of recurrence for rotations) suffice for recurrence in
nilsystems. Additionally, we prove an extension of this property for multiple
recurrence in affine systems