Models of Abstraction

Discussions of abstraction in programming often feel pointless. I've started to think that the participants have different models of abstraction. However, it's been hard for me to say distinguish them clearly. Some ideas are:

There is substantial overlap, but each model of abstraction has different talking points, for and against:

Does one of these models have a claim to be the definition of abstraction? What other models are there? What, if anything, makes it fruitful to discuss "abstraction", without specifying a model?

  1. I need a verb, but I have none