LR(K) Parser Construction Using Bottom-up Formal Analysis

HTML  Download Download as PDF (Size: 1138KB)  PP. 21-28  
DOI: 10.4236/jsea.2012.51004    5,234 Downloads   8,877 Views  Citations
Author(s)

Affiliation(s)

.

ABSTRACT

Design and construction of an error-free compiler is a difficult and challenging process. The main functionality of a compiler is to translate a source code to an executable machine code correctly and efficiently. In formal verification of software, semantics of a language has more meanings than the syntax. It means source program verification does not give guarantee the generated code is correct. This is because the compiler may lead to an incorrect target program due to bugs in itself. It means verification of a compiler is much more important than verification of a source program. In this paper, we present a new approach by linking context-free grammar and Z notation to construct LR(K) parser. This has several advantages because correctness of the compiler depends on describing rules that must be written in formal languages. First, we have defined grammar then language derivation procedure is given using right-most derivations. Verification of a given language is done by recursive procedures based on the words. Ambiguity of a language is checked and verified. The specification is analyzed and validated using Z/Eves tool. Formal proofs are presented using powerful techniques of reduction and rewriting available in Z/Eves.

Share and Cite:

N. Zafar, "LR(K) Parser Construction Using Bottom-up Formal Analysis," Journal of Software Engineering and Applications, Vol. 5 No. 1, 2012, pp. 21-28. doi: 10.4236/jsea.2012.51004.

Copyright © 2024 by authors and Scientific Research Publishing Inc.

Creative Commons License

This work and the related PDF file are licensed under a Creative Commons Attribution 4.0 International License.