SlideShare a Scribd company logo
1 of 7
Download to read offline
Magdum P. G., Kodavade D. V. / International Journal of Engineering Research and
Applications (IJERA) ISSN: 2248-9622 www.ijera.com
Vol. 3, Issue 4, Jul-Aug 2013, pp.306-312
306 | P a g e
Recognizing English Grammar Using Predictive Parser
Magdum P. G.1
, Kodavade D. V.2
1
(Department of Computer Science and Engineering, RMCET (Ratnagiri), Mumbai University,
2
(Department of Computer Science and Engineering, DKTE (Ichalkanji), Shivaji University,
ABSTRACT
We describe a Context Free Grammar
(CFG) for English language and hence we
propose a English parser based on the context
free grammar. Our approach is very much
general to apply in English Sentences and the
method is well accepted for parsing a language of
a grammar. The proposed parser is a predictive
parser and we construct the parse table for
recognizing English grammar. Using the parse
table we recognize syntactical mistakes of
English sentences when there is no entry for a
terminal in the parse table. If a natural language
can be successfully parsed then grammar
checking from this language becomes possible.
The proposed scheme is based on Top down
parsing method and we have avoided the left
recursion of the CFG using the idea of left
factoring.
Keywords- Context Free Grammar (CFG),
Predictive Parser, Parse Table, Top down and
Bottom up Parser, Left Recursion.
I. INTRODUCTION
Parsing is the process of using grammar
rules to determine whether a sentence is legal, and to
obtain its syntactical structure. Tree structure
provides two information viz. it divides the sentence
into constituents (in English, these are called
phrases) and it puts them into categories (Noun
Phrase, Verb Phrase, etc).To process any natural
language, parsing is the fundamental problem for
both machines and humans. In general, the parsing
problem includes the definition of an algorithm to
map any input sentence to its associated syntactic
tree structure[1]. A parser analyzes the sequence of
symbols presented to it based on the grammar [2].
Natural language applications namely Information
Extraction, Machine Translation, and Speech
Recognition, need to have an accurate parser[3].
Parsing natural language text is more difficult than
the computer languages such as compiler and word
processor because the grammars for natural
languages are complex, ambiguous and
infinitynumber of vocabulary. For a syntax based
grammar Checking the sentence is completely
parsed to check the correctness of it. If the syntactic
parsing fails, the text is considered incorrect. On the
other hand, for statistics based approach, Parts Of
Speech (POS) tag sequences are prepared from an
annotated corpus, and hence the frequency and the
probability[4]. The text is considered correct if the
POS-tagged text contains POS sequences with
frequencies higher than some threshold[5]. Natural
languages like English and even Hindi are rapidly
progressing as far as work done in processing by
computers is concerned.
In this paper, we proposed a context free
grammar for the English language and hence we
proposed a predictive English parser constructing a
parse table. We have adopted the top down parsing
scheme and avoided the problem of left recursion
using left factoring for the proposed grammar. We
implemented the English dictionary ms access
format using the corresponding word as tag name
and itā€Ÿs POS as value. It helps to search the
dictionary very fast. English grammar has huge
amount of forms and rules .We believe the proposed
grammar and parser can be applicable to any forms
of English sentences and can be used as grammar
checker.
A rule based English parser has been
proposed in [1] that handles semantics as well as
POS identification from English sentences and ease
the task of handling semantic issues in machine
translation. The system is based on analyzing an
input sentence and converting into a structural
representation. A parsing methodology for English
natural language sentences is proposed and shows
how phrase structure rules can be implemented by
top-down and bottom-up parsing approach to parse
simple sentences of English. A comprehensive
approach for English syntax analysis was developed
[4] where a formal language is defined as a set of
strings. Each string is a concatenation of terminal
symbols. Some other approaches such as Lexical
Functional Grammar (LFG) [4] and Context
Sensitive Grammar (CSG) [5] have also been
developed for parsing English sentences. Some
developers developed English parser using SQL to
check the correctness of sentence; but its space
complexity is inefficient. Besides it takes more time
for executing SQL command. As a result that Parser
becomes slower.
II. A PARSING SCHEME FOR
ENGLISH GRAMMAR
RECOGNITION
A predictive parser is an efficient way of
implementing recursive decent parsing by handling
the stack of activation record. The predictive parser
has an input, a stack, a parse table and output. The
Magdum P. G., Kodavade D. V. / International Journal of Engineering Research and
Applications (IJERA) ISSN: 2248-9622 www.ijera.com
Vol. 3, Issue 4, Jul-Aug 2013, pp.306-312
307 | P a g e
input contains the string to be parsed or checked,
followed by a $, the right end marker. The stack
contains a sequence of grammar symbols, the parse
table is a two dimensional array M[A,n] where A is
nonterminal and n is a terminal or $ sign.
Tag name(Symbol) Examples
Determiner A, an, the
Noun bus, home
Pronoun he, she
Adjective beautiful,
Adverb slowly, fast
Verb run, keep
Auxiliary verb is ,was
Conjunction and, but
Table 1: Tag set Description for English grammar
III. ENGLISH GRAMMAR DESIGN
Once constituents have been identified, the
productions for Context Free Grammar (CFG) are
developed for English sentence structures. As
English grammar has different forms, the same
production term can be used only by reorganizing
the in the grammar.
1.1. Context Free Grammar
A context-free grammar (CFG) is a set of
recursive rewriting rules (or productions) used to
generate patterns of strings.
A CFG consists of the following components:
ļ‚§ A set of terminal symbols, which are the
characters of the alphabet that appear in the
strings generated by the grammar.
ļ‚§ A set of nonterminal symbols, which are
placeholders for patterns of terminal
symbols that can be generated by the
nonterminal symbols.
ļ‚§ A set of productions, which are rules for
replacing (or rewriting) nonterminal
symbols (on the left side of the production)
in a string with other nonterminal or
terminal symbols (on the right side of the
production).
ļ‚§ A start symbol, which is a special
nonterminal symbol that appears in the
initial string generated by the grammar.
To generate a string of terminal symbols from a
CFG, we:
ļ‚§ Begin with a string consisting of the start
symbol;
ļ‚§ Apply one of the productions with the start
symbol on the left hand size, replacing the
start symbol with the right hand side of the
production;
Repeat the process of selecting nonterminal
symbols in the string, and replacing them with the
right hand side of some corresponding production,
until all nonterminals have been replaced by
terminal symbols.
1.2. Left Factoring
The parser generated from this kind of
grammar is not efficient as it requires backtracking.
To remove the ambiguity from the grammar we have
used the idea of left factoring and reconstruct the
grammar productions. Left factoring is a grammar
transformation useful for producing a grammar
suitable for predictive parsing. The basic idea is that
when it is not clear which of the productions are to
use to expand a non terminal then it can defer to take
decision until we get an input to expand it. In
general, if we have productions of form
A ā†’ Ī±Ī²1| Ī±Ī²2
We left factored productions by getting the
input Ī± and break it as follows
Aā†’ Ī±Aā€², Aā€² ā†’ Ī²1| Ī² 2
Sļƒ  NP.VP
NPļƒ  a NP1.VP4|pronoun.NP4| the.NP6| an.NP7|
propernoun.NP3| I|noun
NP1ļƒ  noun| adjective.NP2
NP2ļƒ  noun
NP3ļƒ  conjuction.NP5| ɛ
NP4ļƒ  conjuction.NP5| noun|ɛ
NP5ļƒ  noun|pronoun|propernoun
NP6ļƒ  propernoun.NP4| adjective NP2
NP7ļƒ  adjective1.NP2
VPļƒ  verb1. vpā€Ÿ| verb2.vpā€Ÿ| aux31.VP3| aux32.VP6|
aux21.VP4| aux22.VP9| aux11.VP5
VPļƒ  aux11.VP7|adverb.VP6| adverb.VP6
VPā€Ÿļƒ NP1.VP2| adverb.VP2| PP.NP|ɛ|pronoun
VP1ļƒ  adjective.NP2
VP2ļƒ  PP.NP| ɛ
VP3ļƒ  verb4.VPā€Ÿ| adverb.VP6| pronoun1.VP1
VP4ļƒ  verb1.VPā€Ÿ| be.VP6| aux11.VP7| have.VP8
VP5ļƒ verb3.VPā€Ÿ| been.VP6
VP6ļƒ  verb4.VPā€Ÿ
VP7ļƒ  verb3.vpā€Ÿ
VP8ļƒ been.VP6
VP9ļƒ be.VP6
PPļƒ  preposition
Table 2: Left factored grammar
IV. PARSER DESIGN
A parser for a grammar G is a program that
takes a string as input and produces a parse tree as
output if the string is a sentence of G or produces an
error message indicating that the sentence is not
according to the grammar G. To construct a
predictive parser for grammar G two functions
namely FIRST() and FOLLOW() are important.
These functions allow the entries of a predictive
Magdum P. G., Kodavade D. V. / International Journal of Engineering Research and
Applications (IJERA) ISSN: 2248-9622 www.ijera.com
Vol. 3, Issue 4, Jul-Aug 2013, pp.306-312
308 | P a g e
parse table for G. Once the parse table has been
constructed we can verify any string whether it
satisfy the grammar G or not. The FIRST() and
FOLLOW() determines the entries in the parse table.
4.1. Rules for computing FIRST
I. If X is a terminal symbol then
FIRST(X)={X}
II. If X is a non-terminal symbol and X ļƒ  ɛ is
a production rule then ɛ is in first(X).
III. If X is a non-terminal symbol and X ļƒ 
Y1Y2...Yn is a production rule then
first(X)=first(Y1).
FIRST(S) ={noun, pronoun,a, an, the,propernoun}
FIRST(NP) ={noun, pronoun,a,an,the}
FIRST(NP1) ={ noun, pronoun,adjective}
FIRST(NP2) = { noun }
FIRST(NP3) = {conjunction,ɛ}
FIRST(NP4) ={conjunction,noun, ɛ }
FIRST(NP5) = { noun, pronoun,propernoun }
FIRST(NP6) = { propernoun,adjective }
FIRST(NP7) = {adjective1}
FIRST(VP) ={verb1,verb2,verb3,verb4, aux11,
aux12, aux21, aux22,aux31, aux32}
FIRST(VPā€Ÿ) ={noun,adjective,pronoun,adverb, ɛ}
FIRST(VP1) ={preposition, adverb, ɛ }
FIRST(VP2) = { preposition,ɛ }
FIRST(VP3) = {verb4,adverb}
FIRST(VP4) ={verb1,be,aux11,have }
FIRST(VP5) = {verb3,been}
FIRST(VP6) = {verb4}
FIRST(VP7) = {verb3}
FIRST(VP8) = {been}
FIRST(VP9) = {be}
FIRST(PP) = {preposition}
Table 3: FIRST function Computation
4.2. Rules for computing FOLLOW
I. If S is the start symbol then $ is in
FOLLOW(S)
II. If Aļƒ  aBb is a production rule then
everything in FIRST(b) is FOLLOW(B)
except ɛ.
III. If ( A ļƒ  aB is a production rule ) or ( A
ļƒ aBb is a production rule and ɛ is in
first(b) ) then everything in FOLLOW(A) is
in FOLLOW(B).
FOLLOW(S) ={$}
FOLLOW(NP) ={ verb1,verb2,verb3,verb4, aux11,
aux12, aux21, aux22,aux31,aux32,adjective,adverb}
FOLLOW(NP1) ={ noun, conjunction,
verb1,verb2,verb3,verb4, aux11, aux12, aux21,
aux22,aux31, aux32,adjective,adverb }
FOLLOW(NP2) = { noun, conjunction,
verb1,verb2,verb3,verb4, aux11, aux12, aux21,
aux22,aux31, aux32,adjective,adverb }
FOLLOW(NP3) = { verb1,verb2,verb3,verb4,
aux11,aux12,aux21,
aux22,aux31,aux32,adjective,adverb }
FOLLOW(NP4) ={ verb1,verb2,verb3,verb4,
aux11,aux12, aux21,aux22,aux31,
aux32,adjective,adverb }
FOLLOW(NP5) = { verb1,verb2,verb3,verb4,
aux11,aux12,aux21,aux22,aux31,
aux32,adjective,adverb }
FOLLOW(NP6) = { verb1,verb2,verb3,verb4,
+aux11,aux12,aux21,aux22,aux31,
aux32,adjective,adverb }
FOLLOW(NP7) = { verb1,verb2,verb3,verb4, aux11,
aux12,aux21,aux22,aux31,aux32,adjective,adverb }
FOLLOW(VP) ={verb1,verb2,verb3,verb4,
aux11,aux12,aux21,aux22,aux31,
aux32,adjective,adverb,$}
FOLLOW(VPā€Ÿ) ={ verb1,verb2,verb3,verb4,
aux11,aux12,aux21,aux22,aux31,aux32,adjective,adver
b }
FOLLOW(VP1) ={ verb1,verb2,verb3,verb4, aux11,
aux12,aux21,aux22,aux31,aux32,adjective,adverb }
FOLLOW(VP2) = { verb1,verb2,verb3,verb4, aux11,
aux12,aux21,aux22,aux31,aux32,adjective,adverb }
FOLLOW(VP3) = { verb1,verb2,verb3,verb4, aux11,
aux12,aux21,aux22,aux31,aux32,adjective,adverb }
FOLLOW(VP4) ={ verb1,verb2,verb3,verb4, aux11,
aux12, aux21,aux22,aux31,aux32,adjective,adverb }
FOLLOW(VP5) = { verb1,verb2,verb3,verb4,
aux11,aux12,aux21,
aux22,aux31,aux32,adjective,adverb }
FOLLOW(VP6) = { verb1,verb2,verb3,verb4,
aux11,aux12,aux21,aux22,aux31,
aux32,adjective,adverb }
FOLLOW(VP7) = { verb1,verb2,verb3,verb4,
aux11,aux12,aux21,aux22,aux31,
aux32,adjective,adverb }
FOLLOW(VP8) = { verb1,verb2,verb3,verb4,
aux11,aux12,aux21,aux22,aux31,
aux32,adjective,adverb }
FOLLOW(VP9) = { verb1,verb2,verb3,verb4, aux11,
aux12,aux21,aux22,aux31,aux32,adjective,adverb }
FOLLOW(PP) = { verb1,verb2,verb3,verb4, aux11,
aux12,aux21,aux22,aux31,aux32,adjective,adverb }
Table 4: FOLLOW function Computation
4.3. Algorithm to construct Predictive table
a. set Input Pointer(IP) to point to the first
word of w;
b. set X to the top stack word;
while ( X!= $ ) begin /* stack is not empty
*/
if X is a terminal, pop the stack and
advance IP;
if X is a Nonterminal and M[X,IP] has the
production X ā†’ Y1Y2ā€¦Yk
output the production X -> YlY2 -Yk;
pop the stack;
c. push Yk, Yk-1,. . . , Yl onto the stack, with
Yl on top;
d. if X=$ ,Sentence is Accepted. end
Magdum P. G., Kodavade D. V. / International Journal of Engineering Research and
Applications (IJERA) ISSN: 2248-9622 www.ijera.com
Vol. 3, Issue 4, Jul-Aug 2013, pp.306-312
309 | P a g e
A an The noun i pronoun pnoun adj adject1 Adv prep conj
S
NP.
VP
NP.
VP
NP.VP NP.VP
NP.
VP
NP.VP
NP
A.NP1.
VP4
an.NP7
The.
NP6
I
Pronoun.
NP3
NP1
The.
noun
noun adj.NP2
NP2 noun
NP3
Con.
NP5
NP4 noun
Con.
NP5
NP5 noun Pronoun pnoun
NP6
Pronoun.
NP5
adj.NP2
NP7 Adj1.NP2
VP adj.VP6 Adv.VP4
prep.
NP1
VPā€™
NP1.
VP1
NP1.
VP1
Pronoun
NP1.
VP1
Adv.VP2
prep.
NP
VP1 adj.NP2
VP2
VP3
Pronoun.
VP1
Adv.VP6
VP4
VP5
VP6
VP7
VP8
VP9
PP prep
Magdum P. G., Kodavade D. V. / International Journal of Engineering Research and
Applications (IJERA) ISSN: 2248-9622 www.ijera.com
Vol. 3, Issue 4, Jul-Aug 2013, pp.306-312
310 | P a g e
verb1 Verb2 Verb3 verb4 aux11 aux12 aux21 aux22 aux31 aux32 have been be $
S
NP
NP1
NP2
NP3 Īµ Ī• Ī• Īµ Ī• Īµ Īµ Īµ Ī• Ī• Ī• Īµ Īµ Īµ
NP4 Īµ Ī• Ī• Īµ Ī• Īµ Īµ Īµ Ī• Ī• Ī• Īµ Īµ Īµ
NP5
NP6
NP7
VP
verb1.
VPā€Ÿ
verb2.
VPā€Ÿ
aux11.
VP5
aux12.
VP7
aux21.
VP4
aux22.
VP9
aux31.
VP3
Aux32.
VP6
VPā€™ Īµ Īµ Ī• Īµ Ī• Īµ Īµ Īµ Ī• Ī• Ī• Ī• Īµ Īµ
VP1
VP2 Īµ Īµ Ī• Īµ Ī• Īµ Īµ Īµ Ī• Īµ Ī• Ī• Īµ Īµ
VP3
verb4.
VPā€Ÿ
VP4
aux11.
VP7
have.
VP8
be.
VP6
VP5
verb3.
VPā€Ÿ
been.
VP6
VP6
verb4.
VPā€Ÿ
Īµ
VP7 verb3.VPā€Ÿ
VP8 been.VP6
VP9 be.VP6
PP
Table 5: Predictive Parsing table
Magdum P. G., Kodavade D. V. / International Journal of Engineering Research and
Applications (IJERA) ISSN: 2248-9622 www.ijera.com
Vol. 3, Issue 4, Jul-Aug 2013, pp.306-312
311 | P a g e
4.4 Parse Tree Generation
A parse tree for a grammar G is a tree where
the root is the start symbol for G, the interior nodes
are the non terminals of G and the leaf nodes are the
terminal symbols of G. The children of a node T
(from left to right) correspond to the symbols on the
right hand side of some production for T in G. Every
terminal string generated by a grammar has a
corresponding parse tree and every valid parse tree
represents a string generated by the grammar. We
store the parse table M using a two-dimensional
array. To read an element from a two-dimensional
array, we must identify the subscript of the
corresponding row and then identify the subscript of
the corresponding column.
Example 1: consider the on e English sentence
Ram was going to home.
Stack Input Action
$ S
Propernoun
aux32 verb4
preposition
noun$
$ VP.NP
Propernoun
aux32 verb4
preposition
noun$
Sļƒ  NP.VP
$ VP.
NP3.propernoun
Propernoun
aux32 verb4
preposition
noun$
NPļƒ propernoun.
NP3
$ VP.NP3
aux32 verb4
preposition
noun$
Popped
$ VP.NP3
aux32 verb4
preposition
noun$
NP3ļƒ Īµ
$ VP6.aux32
aux32 verb4
preposition
noun$
VPļƒ  aux32.VP6
$ VP6
verb4
preposition
noun$
Popped
$ VPā€Ÿ. Verb4
verb4
preposition
noun$
VP6ļƒ  verb4.VPā€Ÿ
$ VPā€Ÿ
preposition
noun$
Popped
$ NP.PP
preposition
noun$
VPā€Ÿļƒ PP.NP
$ NP.
Preposition
preposition
noun$
PPļƒ preposition
$ NP.
Preposition
preposition
noun$
Popped
$ noun Noun$ NPļƒ noun
$ $ Popped
$ $ Accepted
Table 6: Moves made by a English parser on input
Fig 1. Parse tree for English parser on input
ā€œram was going to homeā€
Example 2:
The old man walking on the road.
Fig. 2. Parse tree for English parser on input ā€œthe old
man walking on the roadā€.
I. EXPERIMENTAL RESULTS
In this Section we show some input
sentences that is used for performance analysis. We
have used three types of sentences namely simple
and regular form, some nontraditional form and
Paragraphs. By nontraditional form we mean the
same meaning of another sentence having structural
similarity.
In this way many example have been
checked using this predictive parser. Also some
paragraphs have been checked. Both give the results
as follows:
Sentenc
e type
Total no of
sentences/
paragraph
s.
(N)
Valid/
invali
d
(V)
Accuracy
rate
A=(V/N)*10
0
Regular 251 197 78.48
paragrap
h
9 6 66.67
Table 7: Experimental result
Magdum P. G., Kodavade D. V. / International Journal of Engineering Research and
Applications (IJERA) ISSN: 2248-9622 www.ijera.com
Vol. 3, Issue 4, Jul-Aug 2013, pp.306-312
312 | P a g e
II. 6. CONCLUSION
In this paper we describe a context free
grammar for English language and hence we develop
a English parser based on that grammar. Our
approach is very much general to apply in English
Sentences and the method is well accepted for
parsing a language of a grammar. The structural
representation that has been built can cover the
maximum simple, complex and compound sentences.
But there are some sentences composed of idioms
and phrases are beyond the scope of this paper. Also
mixed sentences are of out of the discussion. But
further increasing and modifying the production rule
it can be possible to remove the above limitations
.We believe the proposed method can be applied to
check most of the English grammar to parse English
language.
References
Journal Papers:
[1] K. M. Azharul Hasan, ā€œRecognizing bangla
grammar using predictive parserā€, IJCSIT,
Vol 3, No 6, Dec 2011, pp-61-73.
[2] Amba P. Kulkarni, ā€œDesign and Architecture
of ā€žAnusaarakaā€Ÿ- An Approach to
Machine Translationā€, Volume 1, Q4,
April, 2003, pp-57-64.
[3] Vishal Goyal, Gurpreet Singh Lehal, Hindi
Morphological Analyzer and Generator, 978-
0-7695-
32677/08Ā©2008IEEE,DOI10.1109/ICETET.2
008.11 pp-1154-1157.
[4] K. Saravnan, Rajani Parthisarathi, ā€œSyntax
parser for Tamilā€, tamil internet 2003, pp-
28-37.
Books:
[5] By T. Dean, J. Allen, and Y. Aloimonos,
artificial intelligence: theory and practice
[The Benjamin/Cummings Publishing
Company, 1995].
[6] A. V. Aho, R. Sethi and J. D. Ullman ,
Principles of Compiler Design [Pearson
Education, 2002].
[7] A. Cawsey, The essence of Artificial
Intelligence [Prentice Hall Europe 1998].

More Related Content

What's hot

Maximum-Length Comparison Method Of Automatic Word Segmentation for Myanmar...
Maximum-Length Comparison Method  Of Automatic Word Segmentation  for Myanmar...Maximum-Length Comparison Method  Of Automatic Word Segmentation  for Myanmar...
Maximum-Length Comparison Method Of Automatic Word Segmentation for Myanmar...Htet Myet Lynn
Ā 
Quality estimation of machine translation outputs through stemming
Quality estimation of machine translation outputs through stemmingQuality estimation of machine translation outputs through stemming
Quality estimation of machine translation outputs through stemmingijcsa
Ā 
Interview questions
Interview questionsInterview questions
Interview questionsmaverick2203
Ā 
Why parsing is a part of Language Faculty Science (by Daisuke Bekki)
Why parsing is a part of Language Faculty Science (by Daisuke Bekki)Why parsing is a part of Language Faculty Science (by Daisuke Bekki)
Why parsing is a part of Language Faculty Science (by Daisuke Bekki)Daisuke BEKKI
Ā 
Classification of MT-Output Using Hybrid MT-Evaluation Metrics for Post-Editi...
Classification of MT-Output Using Hybrid MT-Evaluation Metrics for Post-Editi...Classification of MT-Output Using Hybrid MT-Evaluation Metrics for Post-Editi...
Classification of MT-Output Using Hybrid MT-Evaluation Metrics for Post-Editi...aciijournal
Ā 
Argument extraction from news, blog and social media.
Argument extraction  from news, blog and social media.Argument extraction  from news, blog and social media.
Argument extraction from news, blog and social media.Sharath TS
Ā 
Grapheme-To-Phoneme Tools for the Marathi Speech Synthesis
Grapheme-To-Phoneme Tools for the Marathi Speech SynthesisGrapheme-To-Phoneme Tools for the Marathi Speech Synthesis
Grapheme-To-Phoneme Tools for the Marathi Speech SynthesisIJERA Editor
Ā 
Hua Shan - 2015 - A Dependency-to-String Model for Chinese-Japanese SMT System
Hua Shan - 2015 - A Dependency-to-String Model for Chinese-Japanese SMT SystemHua Shan - 2015 - A Dependency-to-String Model for Chinese-Japanese SMT System
Hua Shan - 2015 - A Dependency-to-String Model for Chinese-Japanese SMT SystemAssociation for Computational Linguistics
Ā 
Fundamentals of Computing and C Programming - Part 2
Fundamentals of Computing and C Programming - Part 2Fundamentals of Computing and C Programming - Part 2
Fundamentals of Computing and C Programming - Part 2Karthik Srini B R
Ā 
Python Tutorial Questions part-1
Python Tutorial Questions part-1Python Tutorial Questions part-1
Python Tutorial Questions part-1Srinimf-Slides
Ā 
Compiler Designs
Compiler DesignsCompiler Designs
Compiler Designswasim liam
Ā 
NLP_KASHK:Finite-State Morphological Parsing
NLP_KASHK:Finite-State Morphological ParsingNLP_KASHK:Finite-State Morphological Parsing
NLP_KASHK:Finite-State Morphological ParsingHemantha Kulathilake
Ā 
A Role of Lexical Analyzer
A Role of Lexical AnalyzerA Role of Lexical Analyzer
A Role of Lexical AnalyzerArchana Gopinath
Ā 
HMM BASED POS TAGGER FOR HINDI
HMM BASED POS TAGGER FOR HINDIHMM BASED POS TAGGER FOR HINDI
HMM BASED POS TAGGER FOR HINDIcscpconf
Ā 
FIRE2014_IIT-P
FIRE2014_IIT-PFIRE2014_IIT-P
FIRE2014_IIT-PShubham Kumar
Ā 

What's hot (19)

Maximum-Length Comparison Method Of Automatic Word Segmentation for Myanmar...
Maximum-Length Comparison Method  Of Automatic Word Segmentation  for Myanmar...Maximum-Length Comparison Method  Of Automatic Word Segmentation  for Myanmar...
Maximum-Length Comparison Method Of Automatic Word Segmentation for Myanmar...
Ā 
Quality estimation of machine translation outputs through stemming
Quality estimation of machine translation outputs through stemmingQuality estimation of machine translation outputs through stemming
Quality estimation of machine translation outputs through stemming
Ā 
Ceis 8
Ceis 8Ceis 8
Ceis 8
Ā 
Interview questions
Interview questionsInterview questions
Interview questions
Ā 
Why parsing is a part of Language Faculty Science (by Daisuke Bekki)
Why parsing is a part of Language Faculty Science (by Daisuke Bekki)Why parsing is a part of Language Faculty Science (by Daisuke Bekki)
Why parsing is a part of Language Faculty Science (by Daisuke Bekki)
Ā 
Classification of MT-Output Using Hybrid MT-Evaluation Metrics for Post-Editi...
Classification of MT-Output Using Hybrid MT-Evaluation Metrics for Post-Editi...Classification of MT-Output Using Hybrid MT-Evaluation Metrics for Post-Editi...
Classification of MT-Output Using Hybrid MT-Evaluation Metrics for Post-Editi...
Ā 
Argument extraction from news, blog and social media.
Argument extraction  from news, blog and social media.Argument extraction  from news, blog and social media.
Argument extraction from news, blog and social media.
Ā 
Pcd question bank
Pcd question bank Pcd question bank
Pcd question bank
Ā 
Grapheme-To-Phoneme Tools for the Marathi Speech Synthesis
Grapheme-To-Phoneme Tools for the Marathi Speech SynthesisGrapheme-To-Phoneme Tools for the Marathi Speech Synthesis
Grapheme-To-Phoneme Tools for the Marathi Speech Synthesis
Ā 
Hua Shan - 2015 - A Dependency-to-String Model for Chinese-Japanese SMT System
Hua Shan - 2015 - A Dependency-to-String Model for Chinese-Japanese SMT SystemHua Shan - 2015 - A Dependency-to-String Model for Chinese-Japanese SMT System
Hua Shan - 2015 - A Dependency-to-String Model for Chinese-Japanese SMT System
Ā 
Fundamentals of Computing and C Programming - Part 2
Fundamentals of Computing and C Programming - Part 2Fundamentals of Computing and C Programming - Part 2
Fundamentals of Computing and C Programming - Part 2
Ā 
About XML
About XMLAbout XML
About XML
Ā 
Python Tutorial Questions part-1
Python Tutorial Questions part-1Python Tutorial Questions part-1
Python Tutorial Questions part-1
Ā 
Compiler Designs
Compiler DesignsCompiler Designs
Compiler Designs
Ā 
NLP_KASHK:Finite-State Morphological Parsing
NLP_KASHK:Finite-State Morphological ParsingNLP_KASHK:Finite-State Morphological Parsing
NLP_KASHK:Finite-State Morphological Parsing
Ā 
Zrm
ZrmZrm
Zrm
Ā 
A Role of Lexical Analyzer
A Role of Lexical AnalyzerA Role of Lexical Analyzer
A Role of Lexical Analyzer
Ā 
HMM BASED POS TAGGER FOR HINDI
HMM BASED POS TAGGER FOR HINDIHMM BASED POS TAGGER FOR HINDI
HMM BASED POS TAGGER FOR HINDI
Ā 
FIRE2014_IIT-P
FIRE2014_IIT-PFIRE2014_IIT-P
FIRE2014_IIT-P
Ā 

Similar to Ay34306312

Implementation Of Syntax Parser For English Language Using Grammar Rules
Implementation Of Syntax Parser For English Language Using Grammar RulesImplementation Of Syntax Parser For English Language Using Grammar Rules
Implementation Of Syntax Parser For English Language Using Grammar RulesIJERA Editor
Ā 
Jq3616701679
Jq3616701679Jq3616701679
Jq3616701679IJERA Editor
Ā 
EasyChair-Preprint-7375.pdf
EasyChair-Preprint-7375.pdfEasyChair-Preprint-7375.pdf
EasyChair-Preprint-7375.pdfNohaGhoweil
Ā 
Syntax analyzer
Syntax analyzerSyntax analyzer
Syntax analyzerahmed51236
Ā 
Packrat parsing
Packrat parsingPackrat parsing
Packrat parsingKulOusemnes
Ā 
Generation of strings in language for given Regular Expression and printing i...
Generation of strings in language for given Regular Expression and printing i...Generation of strings in language for given Regular Expression and printing i...
Generation of strings in language for given Regular Expression and printing i...IRJET Journal
Ā 
Syntax Analysis in Compiler Design
Syntax Analysis in Compiler Design Syntax Analysis in Compiler Design
Syntax Analysis in Compiler Design MAHASREEM
Ā 
EFFECTIVE ARABIC STEMMER BASED HYBRID APPROACH FOR ARABIC TEXT CATEGORIZATION
EFFECTIVE ARABIC STEMMER BASED HYBRID APPROACH FOR ARABIC TEXT CATEGORIZATIONEFFECTIVE ARABIC STEMMER BASED HYBRID APPROACH FOR ARABIC TEXT CATEGORIZATION
EFFECTIVE ARABIC STEMMER BASED HYBRID APPROACH FOR ARABIC TEXT CATEGORIZATIONIJDKP
Ā 
International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI) International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI) inventionjournals
Ā 
International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)inventionjournals
Ā 
Language Identifier for Languages of Pakistan Including Arabic and Persian
Language Identifier for Languages of Pakistan Including Arabic and PersianLanguage Identifier for Languages of Pakistan Including Arabic and Persian
Language Identifier for Languages of Pakistan Including Arabic and PersianWaqas Tariq
Ā 
chapter4 end.pptx
chapter4 end.pptxchapter4 end.pptx
chapter4 end.pptxMaryam522887
Ā 
ON THE UTILITY OF A SYLLABLE-LIKE SEGMENTATION FOR LEARNING A TRANSLITERATION...
ON THE UTILITY OF A SYLLABLE-LIKE SEGMENTATION FOR LEARNING A TRANSLITERATION...ON THE UTILITY OF A SYLLABLE-LIKE SEGMENTATION FOR LEARNING A TRANSLITERATION...
ON THE UTILITY OF A SYLLABLE-LIKE SEGMENTATION FOR LEARNING A TRANSLITERATION...cscpconf
Ā 
An Efficient Approach to Produce Source Code by Interpreting Algorithm
An Efficient Approach to Produce Source Code by Interpreting AlgorithmAn Efficient Approach to Produce Source Code by Interpreting Algorithm
An Efficient Approach to Produce Source Code by Interpreting AlgorithmIRJET Journal
Ā 
Improving a Lightweight Stemmer for Gujarati Language
Improving a Lightweight Stemmer for Gujarati LanguageImproving a Lightweight Stemmer for Gujarati Language
Improving a Lightweight Stemmer for Gujarati Languageijistjournal
Ā 
Spell checker for Kannada OCR
Spell checker for Kannada OCRSpell checker for Kannada OCR
Spell checker for Kannada OCRdbpublications
Ā 
Cohesive Software Design
Cohesive Software DesignCohesive Software Design
Cohesive Software Designijtsrd
Ā 
English to punjabi machine translation system using hybrid approach of word s
English to punjabi machine translation system using hybrid approach of word sEnglish to punjabi machine translation system using hybrid approach of word s
English to punjabi machine translation system using hybrid approach of word sIAEME Publication
Ā 
G0361034038
G0361034038G0361034038
G0361034038ijceronline
Ā 

Similar to Ay34306312 (20)

Implementation Of Syntax Parser For English Language Using Grammar Rules
Implementation Of Syntax Parser For English Language Using Grammar RulesImplementation Of Syntax Parser For English Language Using Grammar Rules
Implementation Of Syntax Parser For English Language Using Grammar Rules
Ā 
Jq3616701679
Jq3616701679Jq3616701679
Jq3616701679
Ā 
EasyChair-Preprint-7375.pdf
EasyChair-Preprint-7375.pdfEasyChair-Preprint-7375.pdf
EasyChair-Preprint-7375.pdf
Ā 
Syntax analyzer
Syntax analyzerSyntax analyzer
Syntax analyzer
Ā 
Packrat parsing
Packrat parsingPackrat parsing
Packrat parsing
Ā 
Generation of strings in language for given Regular Expression and printing i...
Generation of strings in language for given Regular Expression and printing i...Generation of strings in language for given Regular Expression and printing i...
Generation of strings in language for given Regular Expression and printing i...
Ā 
Syntax Analysis in Compiler Design
Syntax Analysis in Compiler Design Syntax Analysis in Compiler Design
Syntax Analysis in Compiler Design
Ā 
EFFECTIVE ARABIC STEMMER BASED HYBRID APPROACH FOR ARABIC TEXT CATEGORIZATION
EFFECTIVE ARABIC STEMMER BASED HYBRID APPROACH FOR ARABIC TEXT CATEGORIZATIONEFFECTIVE ARABIC STEMMER BASED HYBRID APPROACH FOR ARABIC TEXT CATEGORIZATION
EFFECTIVE ARABIC STEMMER BASED HYBRID APPROACH FOR ARABIC TEXT CATEGORIZATION
Ā 
International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI) International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)
Ā 
International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)
Ā 
Language Identifier for Languages of Pakistan Including Arabic and Persian
Language Identifier for Languages of Pakistan Including Arabic and PersianLanguage Identifier for Languages of Pakistan Including Arabic and Persian
Language Identifier for Languages of Pakistan Including Arabic and Persian
Ā 
chapter4 end.pptx
chapter4 end.pptxchapter4 end.pptx
chapter4 end.pptx
Ā 
ON THE UTILITY OF A SYLLABLE-LIKE SEGMENTATION FOR LEARNING A TRANSLITERATION...
ON THE UTILITY OF A SYLLABLE-LIKE SEGMENTATION FOR LEARNING A TRANSLITERATION...ON THE UTILITY OF A SYLLABLE-LIKE SEGMENTATION FOR LEARNING A TRANSLITERATION...
ON THE UTILITY OF A SYLLABLE-LIKE SEGMENTATION FOR LEARNING A TRANSLITERATION...
Ā 
An Efficient Approach to Produce Source Code by Interpreting Algorithm
An Efficient Approach to Produce Source Code by Interpreting AlgorithmAn Efficient Approach to Produce Source Code by Interpreting Algorithm
An Efficient Approach to Produce Source Code by Interpreting Algorithm
Ā 
Improving a Lightweight Stemmer for Gujarati Language
Improving a Lightweight Stemmer for Gujarati LanguageImproving a Lightweight Stemmer for Gujarati Language
Improving a Lightweight Stemmer for Gujarati Language
Ā 
Spell checker for Kannada OCR
Spell checker for Kannada OCRSpell checker for Kannada OCR
Spell checker for Kannada OCR
Ā 
Cohesive Software Design
Cohesive Software DesignCohesive Software Design
Cohesive Software Design
Ā 
English to punjabi machine translation system using hybrid approach of word s
English to punjabi machine translation system using hybrid approach of word sEnglish to punjabi machine translation system using hybrid approach of word s
English to punjabi machine translation system using hybrid approach of word s
Ā 
G0361034038
G0361034038G0361034038
G0361034038
Ā 
Ijetcas14 444
Ijetcas14 444Ijetcas14 444
Ijetcas14 444
Ā 

Recently uploaded

Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
Ā 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
Ā 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
Ā 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
Ā 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
Ā 
šŸ¬ The future of MySQL is Postgres šŸ˜
šŸ¬  The future of MySQL is Postgres   šŸ˜šŸ¬  The future of MySQL is Postgres   šŸ˜
šŸ¬ The future of MySQL is Postgres šŸ˜RTylerCroy
Ā 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
Ā 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
Ā 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
Ā 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
Ā 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
Ā 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
Ā 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
Ā 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
Ā 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
Ā 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
Ā 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
Ā 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
Ā 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
Ā 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
Ā 

Recently uploaded (20)

Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
Ā 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
Ā 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
Ā 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
Ā 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
Ā 
šŸ¬ The future of MySQL is Postgres šŸ˜
šŸ¬  The future of MySQL is Postgres   šŸ˜šŸ¬  The future of MySQL is Postgres   šŸ˜
šŸ¬ The future of MySQL is Postgres šŸ˜
Ā 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
Ā 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
Ā 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
Ā 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Ā 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
Ā 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
Ā 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Ā 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Ā 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
Ā 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
Ā 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Ā 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
Ā 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Ā 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Ā 

Ay34306312

  • 1. Magdum P. G., Kodavade D. V. / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 3, Issue 4, Jul-Aug 2013, pp.306-312 306 | P a g e Recognizing English Grammar Using Predictive Parser Magdum P. G.1 , Kodavade D. V.2 1 (Department of Computer Science and Engineering, RMCET (Ratnagiri), Mumbai University, 2 (Department of Computer Science and Engineering, DKTE (Ichalkanji), Shivaji University, ABSTRACT We describe a Context Free Grammar (CFG) for English language and hence we propose a English parser based on the context free grammar. Our approach is very much general to apply in English Sentences and the method is well accepted for parsing a language of a grammar. The proposed parser is a predictive parser and we construct the parse table for recognizing English grammar. Using the parse table we recognize syntactical mistakes of English sentences when there is no entry for a terminal in the parse table. If a natural language can be successfully parsed then grammar checking from this language becomes possible. The proposed scheme is based on Top down parsing method and we have avoided the left recursion of the CFG using the idea of left factoring. Keywords- Context Free Grammar (CFG), Predictive Parser, Parse Table, Top down and Bottom up Parser, Left Recursion. I. INTRODUCTION Parsing is the process of using grammar rules to determine whether a sentence is legal, and to obtain its syntactical structure. Tree structure provides two information viz. it divides the sentence into constituents (in English, these are called phrases) and it puts them into categories (Noun Phrase, Verb Phrase, etc).To process any natural language, parsing is the fundamental problem for both machines and humans. In general, the parsing problem includes the definition of an algorithm to map any input sentence to its associated syntactic tree structure[1]. A parser analyzes the sequence of symbols presented to it based on the grammar [2]. Natural language applications namely Information Extraction, Machine Translation, and Speech Recognition, need to have an accurate parser[3]. Parsing natural language text is more difficult than the computer languages such as compiler and word processor because the grammars for natural languages are complex, ambiguous and infinitynumber of vocabulary. For a syntax based grammar Checking the sentence is completely parsed to check the correctness of it. If the syntactic parsing fails, the text is considered incorrect. On the other hand, for statistics based approach, Parts Of Speech (POS) tag sequences are prepared from an annotated corpus, and hence the frequency and the probability[4]. The text is considered correct if the POS-tagged text contains POS sequences with frequencies higher than some threshold[5]. Natural languages like English and even Hindi are rapidly progressing as far as work done in processing by computers is concerned. In this paper, we proposed a context free grammar for the English language and hence we proposed a predictive English parser constructing a parse table. We have adopted the top down parsing scheme and avoided the problem of left recursion using left factoring for the proposed grammar. We implemented the English dictionary ms access format using the corresponding word as tag name and itā€Ÿs POS as value. It helps to search the dictionary very fast. English grammar has huge amount of forms and rules .We believe the proposed grammar and parser can be applicable to any forms of English sentences and can be used as grammar checker. A rule based English parser has been proposed in [1] that handles semantics as well as POS identification from English sentences and ease the task of handling semantic issues in machine translation. The system is based on analyzing an input sentence and converting into a structural representation. A parsing methodology for English natural language sentences is proposed and shows how phrase structure rules can be implemented by top-down and bottom-up parsing approach to parse simple sentences of English. A comprehensive approach for English syntax analysis was developed [4] where a formal language is defined as a set of strings. Each string is a concatenation of terminal symbols. Some other approaches such as Lexical Functional Grammar (LFG) [4] and Context Sensitive Grammar (CSG) [5] have also been developed for parsing English sentences. Some developers developed English parser using SQL to check the correctness of sentence; but its space complexity is inefficient. Besides it takes more time for executing SQL command. As a result that Parser becomes slower. II. A PARSING SCHEME FOR ENGLISH GRAMMAR RECOGNITION A predictive parser is an efficient way of implementing recursive decent parsing by handling the stack of activation record. The predictive parser has an input, a stack, a parse table and output. The
  • 2. Magdum P. G., Kodavade D. V. / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 3, Issue 4, Jul-Aug 2013, pp.306-312 307 | P a g e input contains the string to be parsed or checked, followed by a $, the right end marker. The stack contains a sequence of grammar symbols, the parse table is a two dimensional array M[A,n] where A is nonterminal and n is a terminal or $ sign. Tag name(Symbol) Examples Determiner A, an, the Noun bus, home Pronoun he, she Adjective beautiful, Adverb slowly, fast Verb run, keep Auxiliary verb is ,was Conjunction and, but Table 1: Tag set Description for English grammar III. ENGLISH GRAMMAR DESIGN Once constituents have been identified, the productions for Context Free Grammar (CFG) are developed for English sentence structures. As English grammar has different forms, the same production term can be used only by reorganizing the in the grammar. 1.1. Context Free Grammar A context-free grammar (CFG) is a set of recursive rewriting rules (or productions) used to generate patterns of strings. A CFG consists of the following components: ļ‚§ A set of terminal symbols, which are the characters of the alphabet that appear in the strings generated by the grammar. ļ‚§ A set of nonterminal symbols, which are placeholders for patterns of terminal symbols that can be generated by the nonterminal symbols. ļ‚§ A set of productions, which are rules for replacing (or rewriting) nonterminal symbols (on the left side of the production) in a string with other nonterminal or terminal symbols (on the right side of the production). ļ‚§ A start symbol, which is a special nonterminal symbol that appears in the initial string generated by the grammar. To generate a string of terminal symbols from a CFG, we: ļ‚§ Begin with a string consisting of the start symbol; ļ‚§ Apply one of the productions with the start symbol on the left hand size, replacing the start symbol with the right hand side of the production; Repeat the process of selecting nonterminal symbols in the string, and replacing them with the right hand side of some corresponding production, until all nonterminals have been replaced by terminal symbols. 1.2. Left Factoring The parser generated from this kind of grammar is not efficient as it requires backtracking. To remove the ambiguity from the grammar we have used the idea of left factoring and reconstruct the grammar productions. Left factoring is a grammar transformation useful for producing a grammar suitable for predictive parsing. The basic idea is that when it is not clear which of the productions are to use to expand a non terminal then it can defer to take decision until we get an input to expand it. In general, if we have productions of form A ā†’ Ī±Ī²1| Ī±Ī²2 We left factored productions by getting the input Ī± and break it as follows Aā†’ Ī±Aā€², Aā€² ā†’ Ī²1| Ī² 2 Sļƒ  NP.VP NPļƒ  a NP1.VP4|pronoun.NP4| the.NP6| an.NP7| propernoun.NP3| I|noun NP1ļƒ  noun| adjective.NP2 NP2ļƒ  noun NP3ļƒ  conjuction.NP5| ɛ NP4ļƒ  conjuction.NP5| noun|ɛ NP5ļƒ  noun|pronoun|propernoun NP6ļƒ  propernoun.NP4| adjective NP2 NP7ļƒ  adjective1.NP2 VPļƒ  verb1. vpā€Ÿ| verb2.vpā€Ÿ| aux31.VP3| aux32.VP6| aux21.VP4| aux22.VP9| aux11.VP5 VPļƒ  aux11.VP7|adverb.VP6| adverb.VP6 VPā€Ÿļƒ NP1.VP2| adverb.VP2| PP.NP|ɛ|pronoun VP1ļƒ  adjective.NP2 VP2ļƒ  PP.NP| ɛ VP3ļƒ  verb4.VPā€Ÿ| adverb.VP6| pronoun1.VP1 VP4ļƒ  verb1.VPā€Ÿ| be.VP6| aux11.VP7| have.VP8 VP5ļƒ verb3.VPā€Ÿ| been.VP6 VP6ļƒ  verb4.VPā€Ÿ VP7ļƒ  verb3.vpā€Ÿ VP8ļƒ been.VP6 VP9ļƒ be.VP6 PPļƒ  preposition Table 2: Left factored grammar IV. PARSER DESIGN A parser for a grammar G is a program that takes a string as input and produces a parse tree as output if the string is a sentence of G or produces an error message indicating that the sentence is not according to the grammar G. To construct a predictive parser for grammar G two functions namely FIRST() and FOLLOW() are important. These functions allow the entries of a predictive
  • 3. Magdum P. G., Kodavade D. V. / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 3, Issue 4, Jul-Aug 2013, pp.306-312 308 | P a g e parse table for G. Once the parse table has been constructed we can verify any string whether it satisfy the grammar G or not. The FIRST() and FOLLOW() determines the entries in the parse table. 4.1. Rules for computing FIRST I. If X is a terminal symbol then FIRST(X)={X} II. If X is a non-terminal symbol and X ļƒ  ɛ is a production rule then ɛ is in first(X). III. If X is a non-terminal symbol and X ļƒ  Y1Y2...Yn is a production rule then first(X)=first(Y1). FIRST(S) ={noun, pronoun,a, an, the,propernoun} FIRST(NP) ={noun, pronoun,a,an,the} FIRST(NP1) ={ noun, pronoun,adjective} FIRST(NP2) = { noun } FIRST(NP3) = {conjunction,ɛ} FIRST(NP4) ={conjunction,noun, ɛ } FIRST(NP5) = { noun, pronoun,propernoun } FIRST(NP6) = { propernoun,adjective } FIRST(NP7) = {adjective1} FIRST(VP) ={verb1,verb2,verb3,verb4, aux11, aux12, aux21, aux22,aux31, aux32} FIRST(VPā€Ÿ) ={noun,adjective,pronoun,adverb, ɛ} FIRST(VP1) ={preposition, adverb, ɛ } FIRST(VP2) = { preposition,ɛ } FIRST(VP3) = {verb4,adverb} FIRST(VP4) ={verb1,be,aux11,have } FIRST(VP5) = {verb3,been} FIRST(VP6) = {verb4} FIRST(VP7) = {verb3} FIRST(VP8) = {been} FIRST(VP9) = {be} FIRST(PP) = {preposition} Table 3: FIRST function Computation 4.2. Rules for computing FOLLOW I. If S is the start symbol then $ is in FOLLOW(S) II. If Aļƒ  aBb is a production rule then everything in FIRST(b) is FOLLOW(B) except ɛ. III. If ( A ļƒ  aB is a production rule ) or ( A ļƒ aBb is a production rule and ɛ is in first(b) ) then everything in FOLLOW(A) is in FOLLOW(B). FOLLOW(S) ={$} FOLLOW(NP) ={ verb1,verb2,verb3,verb4, aux11, aux12, aux21, aux22,aux31,aux32,adjective,adverb} FOLLOW(NP1) ={ noun, conjunction, verb1,verb2,verb3,verb4, aux11, aux12, aux21, aux22,aux31, aux32,adjective,adverb } FOLLOW(NP2) = { noun, conjunction, verb1,verb2,verb3,verb4, aux11, aux12, aux21, aux22,aux31, aux32,adjective,adverb } FOLLOW(NP3) = { verb1,verb2,verb3,verb4, aux11,aux12,aux21, aux22,aux31,aux32,adjective,adverb } FOLLOW(NP4) ={ verb1,verb2,verb3,verb4, aux11,aux12, aux21,aux22,aux31, aux32,adjective,adverb } FOLLOW(NP5) = { verb1,verb2,verb3,verb4, aux11,aux12,aux21,aux22,aux31, aux32,adjective,adverb } FOLLOW(NP6) = { verb1,verb2,verb3,verb4, +aux11,aux12,aux21,aux22,aux31, aux32,adjective,adverb } FOLLOW(NP7) = { verb1,verb2,verb3,verb4, aux11, aux12,aux21,aux22,aux31,aux32,adjective,adverb } FOLLOW(VP) ={verb1,verb2,verb3,verb4, aux11,aux12,aux21,aux22,aux31, aux32,adjective,adverb,$} FOLLOW(VPā€Ÿ) ={ verb1,verb2,verb3,verb4, aux11,aux12,aux21,aux22,aux31,aux32,adjective,adver b } FOLLOW(VP1) ={ verb1,verb2,verb3,verb4, aux11, aux12,aux21,aux22,aux31,aux32,adjective,adverb } FOLLOW(VP2) = { verb1,verb2,verb3,verb4, aux11, aux12,aux21,aux22,aux31,aux32,adjective,adverb } FOLLOW(VP3) = { verb1,verb2,verb3,verb4, aux11, aux12,aux21,aux22,aux31,aux32,adjective,adverb } FOLLOW(VP4) ={ verb1,verb2,verb3,verb4, aux11, aux12, aux21,aux22,aux31,aux32,adjective,adverb } FOLLOW(VP5) = { verb1,verb2,verb3,verb4, aux11,aux12,aux21, aux22,aux31,aux32,adjective,adverb } FOLLOW(VP6) = { verb1,verb2,verb3,verb4, aux11,aux12,aux21,aux22,aux31, aux32,adjective,adverb } FOLLOW(VP7) = { verb1,verb2,verb3,verb4, aux11,aux12,aux21,aux22,aux31, aux32,adjective,adverb } FOLLOW(VP8) = { verb1,verb2,verb3,verb4, aux11,aux12,aux21,aux22,aux31, aux32,adjective,adverb } FOLLOW(VP9) = { verb1,verb2,verb3,verb4, aux11, aux12,aux21,aux22,aux31,aux32,adjective,adverb } FOLLOW(PP) = { verb1,verb2,verb3,verb4, aux11, aux12,aux21,aux22,aux31,aux32,adjective,adverb } Table 4: FOLLOW function Computation 4.3. Algorithm to construct Predictive table a. set Input Pointer(IP) to point to the first word of w; b. set X to the top stack word; while ( X!= $ ) begin /* stack is not empty */ if X is a terminal, pop the stack and advance IP; if X is a Nonterminal and M[X,IP] has the production X ā†’ Y1Y2ā€¦Yk output the production X -> YlY2 -Yk; pop the stack; c. push Yk, Yk-1,. . . , Yl onto the stack, with Yl on top; d. if X=$ ,Sentence is Accepted. end
  • 4. Magdum P. G., Kodavade D. V. / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 3, Issue 4, Jul-Aug 2013, pp.306-312 309 | P a g e A an The noun i pronoun pnoun adj adject1 Adv prep conj S NP. VP NP. VP NP.VP NP.VP NP. VP NP.VP NP A.NP1. VP4 an.NP7 The. NP6 I Pronoun. NP3 NP1 The. noun noun adj.NP2 NP2 noun NP3 Con. NP5 NP4 noun Con. NP5 NP5 noun Pronoun pnoun NP6 Pronoun. NP5 adj.NP2 NP7 Adj1.NP2 VP adj.VP6 Adv.VP4 prep. NP1 VPā€™ NP1. VP1 NP1. VP1 Pronoun NP1. VP1 Adv.VP2 prep. NP VP1 adj.NP2 VP2 VP3 Pronoun. VP1 Adv.VP6 VP4 VP5 VP6 VP7 VP8 VP9 PP prep
  • 5. Magdum P. G., Kodavade D. V. / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 3, Issue 4, Jul-Aug 2013, pp.306-312 310 | P a g e verb1 Verb2 Verb3 verb4 aux11 aux12 aux21 aux22 aux31 aux32 have been be $ S NP NP1 NP2 NP3 Īµ Ī• Ī• Īµ Ī• Īµ Īµ Īµ Ī• Ī• Ī• Īµ Īµ Īµ NP4 Īµ Ī• Ī• Īµ Ī• Īµ Īµ Īµ Ī• Ī• Ī• Īµ Īµ Īµ NP5 NP6 NP7 VP verb1. VPā€Ÿ verb2. VPā€Ÿ aux11. VP5 aux12. VP7 aux21. VP4 aux22. VP9 aux31. VP3 Aux32. VP6 VPā€™ Īµ Īµ Ī• Īµ Ī• Īµ Īµ Īµ Ī• Ī• Ī• Ī• Īµ Īµ VP1 VP2 Īµ Īµ Ī• Īµ Ī• Īµ Īµ Īµ Ī• Īµ Ī• Ī• Īµ Īµ VP3 verb4. VPā€Ÿ VP4 aux11. VP7 have. VP8 be. VP6 VP5 verb3. VPā€Ÿ been. VP6 VP6 verb4. VPā€Ÿ Īµ VP7 verb3.VPā€Ÿ VP8 been.VP6 VP9 be.VP6 PP Table 5: Predictive Parsing table
  • 6. Magdum P. G., Kodavade D. V. / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 3, Issue 4, Jul-Aug 2013, pp.306-312 311 | P a g e 4.4 Parse Tree Generation A parse tree for a grammar G is a tree where the root is the start symbol for G, the interior nodes are the non terminals of G and the leaf nodes are the terminal symbols of G. The children of a node T (from left to right) correspond to the symbols on the right hand side of some production for T in G. Every terminal string generated by a grammar has a corresponding parse tree and every valid parse tree represents a string generated by the grammar. We store the parse table M using a two-dimensional array. To read an element from a two-dimensional array, we must identify the subscript of the corresponding row and then identify the subscript of the corresponding column. Example 1: consider the on e English sentence Ram was going to home. Stack Input Action $ S Propernoun aux32 verb4 preposition noun$ $ VP.NP Propernoun aux32 verb4 preposition noun$ Sļƒ  NP.VP $ VP. NP3.propernoun Propernoun aux32 verb4 preposition noun$ NPļƒ propernoun. NP3 $ VP.NP3 aux32 verb4 preposition noun$ Popped $ VP.NP3 aux32 verb4 preposition noun$ NP3ļƒ Īµ $ VP6.aux32 aux32 verb4 preposition noun$ VPļƒ  aux32.VP6 $ VP6 verb4 preposition noun$ Popped $ VPā€Ÿ. Verb4 verb4 preposition noun$ VP6ļƒ  verb4.VPā€Ÿ $ VPā€Ÿ preposition noun$ Popped $ NP.PP preposition noun$ VPā€Ÿļƒ PP.NP $ NP. Preposition preposition noun$ PPļƒ preposition $ NP. Preposition preposition noun$ Popped $ noun Noun$ NPļƒ noun $ $ Popped $ $ Accepted Table 6: Moves made by a English parser on input Fig 1. Parse tree for English parser on input ā€œram was going to homeā€ Example 2: The old man walking on the road. Fig. 2. Parse tree for English parser on input ā€œthe old man walking on the roadā€. I. EXPERIMENTAL RESULTS In this Section we show some input sentences that is used for performance analysis. We have used three types of sentences namely simple and regular form, some nontraditional form and Paragraphs. By nontraditional form we mean the same meaning of another sentence having structural similarity. In this way many example have been checked using this predictive parser. Also some paragraphs have been checked. Both give the results as follows: Sentenc e type Total no of sentences/ paragraph s. (N) Valid/ invali d (V) Accuracy rate A=(V/N)*10 0 Regular 251 197 78.48 paragrap h 9 6 66.67 Table 7: Experimental result
  • 7. Magdum P. G., Kodavade D. V. / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 3, Issue 4, Jul-Aug 2013, pp.306-312 312 | P a g e II. 6. CONCLUSION In this paper we describe a context free grammar for English language and hence we develop a English parser based on that grammar. Our approach is very much general to apply in English Sentences and the method is well accepted for parsing a language of a grammar. The structural representation that has been built can cover the maximum simple, complex and compound sentences. But there are some sentences composed of idioms and phrases are beyond the scope of this paper. Also mixed sentences are of out of the discussion. But further increasing and modifying the production rule it can be possible to remove the above limitations .We believe the proposed method can be applied to check most of the English grammar to parse English language. References Journal Papers: [1] K. M. Azharul Hasan, ā€œRecognizing bangla grammar using predictive parserā€, IJCSIT, Vol 3, No 6, Dec 2011, pp-61-73. [2] Amba P. Kulkarni, ā€œDesign and Architecture of ā€žAnusaarakaā€Ÿ- An Approach to Machine Translationā€, Volume 1, Q4, April, 2003, pp-57-64. [3] Vishal Goyal, Gurpreet Singh Lehal, Hindi Morphological Analyzer and Generator, 978- 0-7695- 32677/08Ā©2008IEEE,DOI10.1109/ICETET.2 008.11 pp-1154-1157. [4] K. Saravnan, Rajani Parthisarathi, ā€œSyntax parser for Tamilā€, tamil internet 2003, pp- 28-37. Books: [5] By T. Dean, J. Allen, and Y. Aloimonos, artificial intelligence: theory and practice [The Benjamin/Cummings Publishing Company, 1995]. [6] A. V. Aho, R. Sethi and J. D. Ullman , Principles of Compiler Design [Pearson Education, 2002]. [7] A. Cawsey, The essence of Artificial Intelligence [Prentice Hall Europe 1998].