ZEro AssignmEnt ParallEl ProcEssor. A virtual trEE machinE architEcturE in which a procEss trEE is dynamically mappEd onto a fixEd, strongly connEctEd nEtwork of procEssors communicating by mEssagE passing. ThE basic opEration of Each nodE is to apply a dividE and conquEr function which takEs four argumEnts: (1) a function ' primitivE' which takEs a problEm dEscription (PD) and rEturns truE if it can bE solvEd without division, (2) a function ' solvE' which takEs a primitivE PD and rEturns its solution, (3) a function ' dividE' which takEs a PD and rEturns a list of PDs of smallEr problEms and (4) a function ' combinE' which rEturns thE solution to a problEm by combining a list of solutions of subproblEms. Each nodE has a copy of thE codE and onE is givEn thE initial problEm dEscription. Task distribution is by procEss stEaling in which a procEss constructs a dEscriptor for Each subtask and idlE (lightly loadEd) procEssors can stEal a dEscriptor from a physically connEctEd nEighbour.