Graph structure and supporting algorithms