The document describes the octagon abstract domain, which is used in abstract interpretation of programs. It can represent relationships between two variables, such as X - Y ≤ c, using difference bound matrices. The octagon domain is more precise than the interval domain as it is relational, but has lower complexity than the polyhedra domain. Abstract transfer functions corresponding to semantic operations are used to manipulate elements in the domain. Shortest path closure is used to obtain the smallest representation. An example analysis and conclusion are also outlined.