I have often argued that the idea of an ‘abstraction’, as usually conceived by Cognitive Science, is a myth. The specific notion of abstraction that I’m accusing of mythological status about is one in which concepts can be divided into those which primarily encode specific features or instances or particulars (concrete concepts), and those which do not (abstract concepts); it’s epitomized in the ‘schema abstraction’ notion of category learning. On this notion, initial encounters with an abstract concept involve encoding lots of features that are fundamentally irrelevant to some (abstract, relational) concept. Later, you prune away those irrelevancies, and are left with just the pure relational entity.
Of course, something can be a myth either because it is an unattainable ideal, or because it is fundamentally wrongheaded. Some people have suggested that sure, it might be that even abstract ideas still retain some concrete features, but have fewer of them, somehow. So ‘abstraction’ is, itself, an abstract principle which maybe never happens purely in practice, but is still the limit of real abstractions in the same way that a Platonic circle is the limit of real circle-like shapes. In contrast I’ve usually argued that the myth of ‘abstraction’ is the latter–fundamentally wrong-headed, at least an an explanation of interesting complex reasoning in supposedly abstract fields like math or physics. Maybe this feature-stripping thing happens, but it’s not what we call "abstraction" in mathematics.
Abstraction in Mathematics
On my account, abstraction in mathematical reasoning usually involves a transformation in which powerful intuitions about a situation are gained by replacing one set of features with another. Abstracting is what happens when you take a situation with lots of distracting features, and find a new way to express that situation. This new way still has lots of features, but either they are quite different (and so differently distracting) from the features of the first situation, or the features are arranged so as to trigger perceptions and cognitions that are helpful, rather than harmful, in dealing with the appropriate implications. So abstraction is not (as the myth would have it) about removing features to isolate relations; instead, it’s about managing features to get relational work done.
An Example
An example is probably in order, and fortunately I have one handy. This will look totally mundane to anyone who has ever done any recreational math, but maybe is still useful for purposes of illustration. My daughter and I have been on one of our regular Vi Hart kicks, and got into hexaflexagons. In short, these are very foldy pieces of paper, which loop through a number of dynamic states. We built a few (all trihexaflexagons, for those playing at home), and started playing with them to see what we could figure out.
How many hexagonal faces are there?
There are a few ways to figure this out. We went with a simple empirical ‘feature augmentation’ strategy. Initially all the faces look like blank paper–not very feature-rich, and not very useful for counting.
We colored each bare face a different way, until we ran out, after six colors, of new faces. Of course, we didn’t know we had them all, but we did, so that was alright.
Which faces fold into each other?
Initially, my daughter thought that all of the faces were basically identical. In order to explore this, and to understand how each face connects to each other face, we again used an empirical strategy: we built up a network graph of face connections. Basically, we used a blank piece of paper, and drew a circle in the color of the face we currently had up, and then rotated the flexagon to get a new face. If we had not yet drawn that face on our paper, we drew it, and connected the two faces (old and new) with a line. If we had, we just drew the line. After a while, we got something that looked like this:
Then we put the flexagon down, and started playing with the graph. Of course, we didn’t ‘care’ about the lengths of the lines, or the arrangement of the nodes, in the sense that we could have drawn them any way and had the same mapping from flexagon to graph. In another sense, we did care about this arrangement. The current arrangement has ugly features that aren’t very useful. So we drew it about 4 times, each time trying to untangle and regularize the lines. (Notice carefully the main thread: ‘untangling’ is a very feature-based activity, and so is ‘regularizing’. It’s just that the features are those of circles and lines and the constraints of graph-games, not those of flexagons. This is the core point I’m after). At the end, we got this:
Cool! The flexagon is a triangle!! A triangle of…something. We didn’t quite know or care what, at least not at first.
How does the triangle spin?
When we first drew the triangle, we didn’t have the arrow heads. Our next activity was to try to draw the direction of the state transitions (we had to be careful at this point, because the directions reverse if you flip the flexagon over). When we did, it immediately became obvious that the outer loops revolved in the opposite direction from the inner loop. That is, the inner loop was special–no rearranging of the graph could make this cycle the same as the other 3 cycles of three elements. Could we have figured this out if we had remained locked in the feature-space of the flexagon? Surely not. But could we have figured it out without a wonderful visual system capable of processing loops and triangles and orientations, and a good graph? Again, it seems unlikely. Abstractions is the construction of useful features, not at all the absence of features.
How are the corners different?
Once you have the triangle representation, a new question arises: what makes the corner states (which connect to only two other states) different from the midline states (which have four connections)? Cecily took her flexagon to school the next day, and figured one interesting thing out (I should mention that most of this work started after midnight–so she was probably pretty tired. Sorry Ms. Myers!!). Cecily noticed that while the corner states have three mountain folds and three valley folds that define the triangles that make up the hexagon (they are really not valley folds, exactly–more like trench folds–but the image is about right), the edge states have two sets of valley/trench folds. This "explains" why the corner folds have fewer outgoing transformations than the edge folds: you can transform the flexagon along any set of three trench folds, but not along the mountain folds.

An ‘edge’ state. Observe the two sets of trench folds, which Cecily noticed while looking for a marker of the ‘edge’ feature.
The cognitively interesting point is that abstractions are bidirectional: observing the features of the flexagon enticed us to make the graph; then observing features of the (triangular) graph enticed Cecily to notice and care about differences she’d originally ignored in the flexagon. Now we can say "two ways to fold" to generally mean "multiple options or ways to go from here".
What’s new here?
Nothing. Almost any mathematics educator or mathematically inclined person would tell you that this is just how it works. Mathematical understanding involves concrete, simple observations on ever-shifting concrete representations. We call it "abstract understanding" when the features of the derived case (the triangle-shaped graph, in this case) aren’t obviously literally present in the original case. But we’re never reasoning very far from the surface form.
My usual hobby-horse
Just to point it out, if Cecily and I go on to explore hexaflexagons further, we’ll start doing it algebraically, using concepts from groups and permutations. This won’t change anything fundamental; we’ll just swap out the regularities of circles and lines for those of letters and visual patterns. We’ll still be swapping one set of features for another, because that’s just how it works.