Some structure and definitions