Image compression by back-propagation: An example of extensional programming