Hard-edge Abstraction