some theoretical background