Error detection and propagation

Still missing cycles!