parsing is a commonly used operation in many applications requiring language analysis. In most areas, such as translation of programming languages, linear time parsers can be built given that the underlying grammars a...
详细信息
parsing is a commonly used operation in many applications requiring language analysis. In most areas, such as translation of programming languages, linear time parsers can be built given that the underlying grammars are unambiguous, and that a limited amount of look-ahead is required to recognize productions. These prove too limiting, and more general parsingalgorithms, such as the CYK algorithm or Early's algorithm, are necessary when parsing inputs in areas such as image processing, pattern recognition and natural language processing. These algorithms generally require O(n3) time. Several attempts have been made to parallelize general CFL parsers in order to improve their time complexity. Some of these have utilized synchronously operating custom VLSI. This paper describes a parallelalgorithm for parsing CFLs based on Early's algorithm implemented on a network of INMOS transputers, a currently available, off-the-shelf processor.
A new parallelalgorithm for transforming an arithmetic infix expression into a par se tree is presented. The technique is based on a result due to Fischer (1980) which enables the construction of the parse tree, by a...
详细信息
A new parallelalgorithm for transforming an arithmetic infix expression into a par se tree is presented. The technique is based on a result due to Fischer (1980) which enables the construction of the parse tree, by appropriately scanning the vector of precedence values associated with the elements of the expression. The algorithm presented here is suitable for execution on a shared memory model of an SIMD machine with no read/write conflicts permitted. It uses O(n) processors and has a time complexity of O(log2n) where n is the expression length. parallelalgorithms for generating code for an SIMD machine are also presented.
暂无评论