Lines Matching full:codes
2 * all possible valid and complete Huffman codes, subject to a length limit.
12 As inflate does, decrease root for short codes
23 Examine all possible Huffman codes for a given number of symbols and a
25 inflate. Only complete Huffman codes are counted.
27 Two codes are considered distinct if the vectors of the number of codes per
30 the bit values to the codes (i.e. only canonical codes are counted).
44 speed. There is a single first-level table to decode codes up to root bits
46 has 1 << root entries and is indexed by the next root bits of input. Codes
53 codes. Each subsequent root-bit prefix then has its own sub-table. The
55 incrementally as the number of codes at each bit length is populated. When
56 all of the codes are shorter than root bits, then root is reduced to the
72 First, all of the possible Huffman codes are counted, and reachable
74 Second, the intermediate states that lead to (root + 1) bit or longer codes
75 are used to look at all sub-codes from those junctures for their inflate
77 codes of root bits or less in length.) Third, the visited states in the
78 construction of those sub-codes and the associated calculation of the table
80 Beginning the code examination at (root + 1) bit codes, which is enabled by
84 approximately 2x10^16 possible Huffman codes, only about 2x10^6 sub-codes
86 for the default arguments of 286 symbols limited to 15-bit codes.
96 possible codes remaining at the maximum length. This limits the maximum
121 len: number of bits in the codes currently being assigned
144 For the deflate example of 286 symbols limited to 15-bit codes, the array
147 possible triplets are reached in the generation of valid Huffman codes.
164 For the deflate example of 286 symbols limited to 15-bit codes, the bit
170 local int max; /* maximum allowed bit length for the codes */
198 /* Return the number of possible Huffman codes using bit patterns of lengths
205 big_t sum; /* number of possible codes from this juncture */ in count()
237 /* count all possible codes from this juncture and add them up */ in count()
317 /* Examine all possible codes from the given node (syms, len, left). Compute
382 /* examine codes from here, updating table space as we go */ in examine()
398 /* Look at all sub-codes starting with root + 1 bits. Look at only the valid
413 /* look at all (root + 1) bit and longer codes */ in enough()
420 resulting codes (complete at root + 2 or more) */ in enough()
425 /* also look at root bit codes with completions at root + 1 in enough()
437 Examine and show the total number of possible Huffman codes for a given
441 The possible codes are counted for each number of coded symbols from two to
442 the maximum. The counts for each of those and the total number of codes are
444 across all possible codes. Each new maximum number of table entries and the
447 To count and examine Huffman codes that are not length-limited, provide a
463 big_t sum; /* accumulated number of codes over n */ in main()
533 /* count possible codes for all numbers of symbols, add up counts */ in main()
543 printf("%llu %d-codes\n", got, n); in main()
545 printf("%llu total codes for 2 to %d symbols", sum, syms); in main()