While programming languages tend to give higher abstraction levels to the programmer, the programs that are written nowadays tend to be more complex: these programs are distributed, concurrent, interactive, and often, mobile. Moreover the critical role they may play sometimes requires a really precise analysis of their properties. This dissertation is devoted to the study of proof techniques for the analysis of such programs.We develop a theory of “up-to” techniques for coinduction, in the abstract setting of complete lattices. This theory contains new and general modularity results; it establishes the grounds for the reminder of the dissertation, where we focus on up-to techniques for bisimilarity. Up-to techniques for weak bisimilarity ar...