We give the first deterministic polynomial time algorithm that computes the throughput value of a given context-free language L. The language is given by a grammar G of size n, together with a weight function assigning a positive weight to each symbol. The weight of a word w∈ L is defined as the sum of weights of its symbols (with multiplicities), and the mean weight is the weight of w divided by length of w. The throughput of L, denoted by throughput (L), is the smallest real number t, such that the mean value of each word of L is not smaller than t. Our approach, to compute throughput (L), consists of two phases. In the first one we convert the input grammar G to a grammar G', generating a finite language L′, such that throughput (L) = throughput (L′). In the next phase we find a word of the smallest mean weight in a finite language L′. The size of G′ is polynomially related to the size of G.
The problem is of practical importance in system-performance analysis, especially in the domain of network packet processing, where one of the important parameters is the "guaranteed throughput" of a system for on-line network packet processing.
[1]
Richard M. Karp,et al.
A characterization of the minimum cycle mean in a digraph
,
1978,
Discret. Math..
[2]
Michael Luttenberger,et al.
On Fixed Point Equations over Commutative Semirings
,
2007,
STACS.
[3]
J. Berstel,et al.
Context-free languages
,
1993,
SIGA.
[4]
Dexter Kozen,et al.
Parikh's theorem in commutative Kleene algebra
,
1999,
Proceedings. 14th Symposium on Logic in Computer Science (Cat. No. PR00158).
[5]
Ioannis Lambadaris,et al.
A Criterion for Speed Evaluation of Content Inspection Engines
,
2006,
International Conference on Networking, International Conference on Systems and International Conference on Mobile Communications and Learning Technologies (ICNICONSMCL'06).
[6]
Rajesh K. Gupta,et al.
Faster maximum and minimum mean cycle algorithms for system-performance analysis
,
1998,
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..