Physics is hard. [...] Your paper (and physics texts generally) live in the realm of mathematics and theory. That is a world where everything is continuous, where precision is infinite, and computational time is unbounded. [...] The world of video games is very different. [...] It is more important for a game engine to provide "perceptually correct" results rather than "scientifically correct" results. [...] You can use real-world physics equations to guide your systems. Doing much more than that is an exercise in insanity.
There is nothing complicated in his paper. It's even a simplification of the more general case of three-dimensional rigid bodies colliding. At any rate, in both cases, the equations you get from a direct application of Newton's laws allow you to compute the linear and angular momentums at time t+dt given their previous values at time t and the forces applied to the rigid body, just by computing a few matrix products, norms, dot products and cross products. No need for infinite precision, no need for infinitesimal time steps and certainly no need for a supercomputer.
I think you just set the bar too high.
Well, any lower than that would restrict the generality of the algorithms derived from this study. It IS possible to compute good-looking, accurate physics that is not CPU-intensive without resorting to whatever doesn't look too bad, like adding a velocity proportional to penetration depth and whatnot.
You may want to have a look at rigid body dynamics in general as some of the formalism used in your paper could be simplified or given broader applicability. For instance, you use the determinant of two vectors for what is actually better conceived as the norm of their cross product (it's the same thing, but conceptually, I think it's better to look at it that way). Also, you regard inertia as a real number I which is good for 2D but laerning about the inertia tensor may be a good investment for the future if you ever intend to make a physics engine for 3D objects. I'd advise that you define A and B as functions of (r, n) and (r, n, p) respectively, just for the sake of clarity. We don't want people to believe they are intrinsic to the object at hand, now do we?
That being said, thanks a lot for your contribution. The formulae are sure to prove useful to anyone trying to tackle 2D rigid body dynamics.