Static analysis of a program allows to predict the properties of its executions without actually executing the program. Abstract interpretation provides the mathematical theory to design such analysis. In particular, it helps design relational analyses, which keep track of the relations between variables. These analyses are costly because they usually require computations at every program points (they are flow-sensitive). To reduce these computations, we design a flow insensitive static analysis that can provide a relational invariant on the variables. This invariant is global, there is only one for the program analysed, but it must have the same precision as if we used a flow-sensitive one. A specific representation of the program, namely ...