Patent Document ID: 5534861
Application ID: 08400683

Base Claim:
1. A computer program product for use with a computer-implemented system for compressing input data consisting of sequences of source symbols selected from a source alphabet to form output data consisting of sequences of code symbols selected from a code alphabet according to a static dictionary stored in memory, said dictionary representing a static parse-tree having nodes representing said code symbols, said nodes being linked into paths representing said source symbol sequences, said computer program product comprising: a recording medium; means, recorded on said recording medium, for directing said computer-implemented system to repeatedly perform the steps of determining a source symbol sequence from said input data, adding at least one node to said parse-tree responsive to said source symbol sequence, and assigning a use count value to said at least one node responsive to the number of said source symbol sequence occurrences; and means, recorded on said recording medium, for directing said computer-implemented system to reduce said parse-tree to a first predetermined plurality of nodes by repeatedly deleting from said parse-tree one or more childless nodes having a use count value less than a predetermined use count value threshold.

---

Claim 2:
2. The computer program product of claim 1 further comprising: means, recorded on said recording medium, for directing said computer-implemented system to combine with its parent node at least one childless node having a single-child parent node for which said use count differs by no more than one from said use count value for said at least one childless node, thereby forming a new childless node.