Implement decrease_key