An abstraction inversion is the phenomenon that happens when "a simpler notion is defined in terms of more complex notions". The cost of abstraction inversion is paid by high-overhead in implementation, difficulty in semantic analysis and proofs, mismatch of development tools, general bloat, complexity and unsafety.
https://www.plover.com/~mjd/misc/hbaker-archive/CritLisp.html
@neauoire That's a good list of costs. Where I work there is a general habit of sending in very large and complex data structures as input to functions (Java), not because the function needs all that data, but because the caller generally already has that data structure prepared. The long-term problems that the code experiences because of this habit pretty much correlates exactly with your list of costs... I ought to take some of this and turn it into evidence.