Careful - the BRDF doesn't describe the amount of reflected energy, but the reflected *radiance*, which is a measure of intensity per solid angle (power over area over solid angle) dependent on view angle. If you look at the definition of solid angle, you'll see the "cells" (when integrating over a sphere) have different surface areas depending on the angle made by the light ray with the normal (this is the solid angle part). Similarly, the *effective area* also depends on view angle, in a different way - if you look at a sheet of paper at a grazing angle, the area taken by the paper's surface in your field of vision is much smaller than if you were facing the sheet of paper at normal incidence (this is the area part)

This means that the BRDF itself can take values greater than 1, without violating conservation of energy (since the BRDF doesn't represent energy). In fact, the specular BRDF is a Dirac function, and is infinite at a unique, infinitesimal angle (the specular reflection angle) and zero everywhere else, though it correctly integrates to 1, as expected for conservation of energy.

To get the actual energy reflected in a particular direction by the BRDF, you need to integrate the radiance for a given outgoing (or incoming) direction over all possible incoming (or, respectively, outgoing) directions. This will add up to at most 1. If the BRDF is physically correct, I mean.

This BRDF stuff is tricky to grasp at first, but it makes a lot of sense.

**Edited by Bacterius, 27 February 2013 - 10:28 AM.**

The slowsort algorithm is a perfect illustration of the multiply and surrender paradigm, which is perhaps the single most important paradigm in the development of reluctant algorithms. The basic multiply and surrender strategy consists in replacing the problem at hand by two or more subproblems, each slightly simpler than the original, and continue multiplying subproblems and subsubproblems recursively in this fashion as long as possible. At some point the subproblems will all become so simple that their solution can no longer be postponed, and we will have to surrender. Experience shows that, in most cases, by the time this point is reached the total work will be substantially higher than what could have been wasted by a more direct approach.

- *Pessimal Algorithms and Simplexity Analysis*