Dependent type theory is a powerful logic for both secure programming and computer assisted proving about programs. Dependently typed languages such as Agda, Coq and Idris can therefore be used both as programming languages and as proof assistants. The goal of this PhD project is to establish directed dependent type theories (DDTT) by formulating them, implementing them, proving their consistency and demonstrating their use. By a DDTT, we mean a dependent type theory which has not only a built-in notion of equality, but also of structure preserving transformation. By including the notion of structure preservation in the foundations of the system, rather than defining it on an ad-hoc basis as is done in classical mathematics, we expect to ob...