Source author record

Elfarouk Harb

Explore this author’s publications, collaborators and research topics. This catalog record has not been claimed by its author.

ResearcherUnclaimed source record

Catalog footprint

Research overview

2works
4topics
1close collaborators

Published work

2 publications

preprint2020arXiv

Polynomial Time Algorithms for Constructing Optimal Binary AIFV-22 Codes

Huffman Codes are optimal Instantaneous Fixed-to-Variable (FV) codes in which every source symbol can only be encoded by one codeword. Relaxing these constraints permits constructing better FV codes. More specifically, recent work has shown that AIFV-mm codes can beat Huffman coding. AIFV-mm codes construct am mm-tuple of different coding trees between which the code alternates and are only almost instantaneous (AI). This means that decoding a word might require a delay of a finite number of bits. Current algorithms for constructing optimal AIFV-mm codes are iterative processes that construct progressively "better sets" of code trees. The processes have been proven to finitely converge to the optimal code but with no known bounds on the convergence rate. This paper derives a geometric interpretation of the space of binary AIFV-22 codes, permitting the development of the first polynomially time-bounded iterative procedures for constructing optimal AIFV codes. We first show that a simple binary search procedure can replace the current iterative process to construct optimal binary AIFV-22 codes. We then describe how to frame the problem as a linear programming with an exponential number of constraints but a polynomial-time separability oracle. This permits using the Grötschel, Lovász and Schrijver ellipsoid method to solve the problem in a polynomial number of steps. While more complicated, this second method has the potential to lead to a polynomial time algorithm to construct optimal AIFV-mm codes for general mm.

preprint2020arXiv

Speeding up the AIFV-22 dynamic programs by two orders of magnitude using Range Minimum Queries

AIFV-22 codes are a new method for constructing lossless codes for memoryless sources that provide better worst-case redundancy than Huffman codes. They do this by using two code trees instead of one and also allowing some bounded delay in the decoding process. Known algorithms for constructing AIFV-code are iterative; at each step they replace the current code tree pair with a "better" one. The current state of the art for performing this replacement is a pair of Dynamic Programming (DP) algorithms that use O(n5)O(n^5) time to fill in two tables, each of size O(n3)O(n^3) (where nn is the number of different characters in the source). This paper describes how to reduce the time for filling in the DP tables by two orders of magnitude, down to O(n3)O(n^3). It does this by introducing a grouping technique that permits separating the Θ(n3)Θ(n^3)-space tables into Θ(n)Θ(n) groups, each of size O(n2)O(n^2), and then using Two-Dimensional Range-Minimum Queries (RMQs) to fill in that group's table entries in O(n2)O(n^2) time. This RMQ speedup technique seems to be new and might be of independent interest.

Research graph

See the researcher in context

Open full explorer

Inspect adjacent papers, topics, institutions and collaborators without losing the researcher page.

Building this map preview

BZPEER is loading the nearby papers, people, topics and institutions for this page.