A basic question in theoretical computer science is to sparsify an input graph \(G\)  while approximately preserving its shortest path distances.
These sparsifiers have applications in networking, algorithms, and more (see survey [1]}). We will discuss two important types of sparsifiers: spanners and emulators.
