A system and method using inductive image generation with cached, state-specific
image tiles for editing digital images. A computer system contains an archival
digital image to be edited and viewed, a transformation state list, describing
editing operations to be applied to the archival image in order to produce the
current edited image rendition, and a viewing data set, describing the resolution,
offset and extent of the current view of the current edited image rendition. The
current view is constructed from a set of image tiles kept in a tile cache. In
response to an instruction to generate the current view, the system identifies
the requisite tiles, and then generates each tile by an inductive image generation
process. The latter process comprises (a) ascertaining if the tile is in the tile
cache, and, if not (b) ascertaining if the image is unedited and if so obtaining
the requisite tile from the image file, and, if not (c) generating the tile by
identifying and assembling the requisite supplier tiles in the previous state of
the image-editing process and by then applying the current state's editing transformation
function to the supplier tiles. The inductive image-generation process is recursive
in that in case it is necessary to assemble supplier tiles in the course of the
inductive image-generation process then they too are assembled by the process of
inductive image generation.