213 research outputs found
Cover results and normal forms
The purpose of this paper was to sketch an area of problems for the concept of cover. We showed that in spite of some remarks in the literature the problem of covering (unambiguous and -free) cfg's with cfg's in GNF is open. Moreover we gave some properties of covers and we showed a relation between covers and parsability
GLR-Parsing of Word Lattices Using a Beam Search Method
This paper presents an approach that allows the efficient integration of
speech recognition and language understanding using Tomita's generalized
LR-parsing algorithm. For this purpose the GLRP-algorithm is revised so that an
agenda mechanism can be used to control the flow of computation of the parsing
process. This new approach is used to integrate speech recognition and speech
understanding incrementally with a beam search method. These considerations
have been implemented and tested on ten word lattices.Comment: 4 pages, 61K postscript, compressed, uuencoded, Eurospeech 9/95,
Madri
Teaching compilers: automatic question generation and intelligent assessment of grammars' Parsing
Automatic question generation and the assessment of
procedural knowledge is still a challenging research topic. This
article focuses on the case of it, the techniques of parsing grammars
for compiler construction. There are two well-known techniques for
parsing: top-down parsing with LL(1) and bottom-up with LR(1).
Learning these techniques and learning to design grammars that
can be parsed with these techniques requires practice. This article
describes an application that covers all the tasks needed to automa-
tize the learning and assessment process: 1) automatically generate
context-free languages and grammars of different complexity; 2)
pose different types of questions to the student with an appropriate
response interface; 3) automatically correct the student answer,
including grammar design for a given language; and 4) provide
feedback on errors. The application has been implemented as a
plug-in of the SIETTE assessment system that, in addition, can
provide adaptive behavior for question selection. It has been suc-
cessfully used by more than a thousand students for formative and
summative assessment.Funding for open access charge: Universidad de Málaga / CBU
A survey of normal form covers for context-free grammars
An overview is given of cover results for normal forms of context-free grammars. The emphasis in this paper is on the possibility of constructing ɛ-free grammars, non-left-recursive grammars and grammars in Greibach normal form. Among others it is proved that any ɛ-free context-free grammar can be right covered with a context-free grammar in Greibach normal form. All the cover results concerning the ɛ-free grammars, the non-left-recursive grammars and the grammars in Greibach normal form are listed, with respect to several types of covers, in a cover-table
LR(k) sparse-parsers and their optimisation
PhD ThesisA method of syntactic analysis is developed which . .
is believed to surpass all known competitors in all major
respects.
I
The method is based upon that associated with the
LR(k) grammars but is faster because it bypasses all
reduction steps concerned with 'chain' productions. These
are freely selected productions which are considered
semantically irrelevant and whose right parts consist of
just a single symbol. The parses produced by the method
are 'sparse' in that they contain no references to chain
productions - they are termed 'chain-free' parses.
The CFLR(k) grammars are introduced as the largest
class which can be -Chain-F-ree parsed from -Le-ft to Right while looking ~ symbols ahead of the current point of the
parse. The properties of these grammars are examined in
detail and their relationship to the conventional LR(k)
grammars is explored. Techniques are presented for testing
grammars for the CFLR(k) property and for constructing
chain-free parsers for those grammars possessing the
property. Methods are also presented for. converting
ordinary LR(k) parsers into chain-free parsers.
CFLR(k) parsers are more widely applicable than
their LR(k) counterparts, are faster 'and provide the same
excellent detection of syntactic errors. Unfortunately they
also tend to be rather larger. A 'simple optimization is
presented which completely'overcomes this single disadvantage
without sacrificing any of the advantages of the
method.
These theoretical techniques are adapted to provide
truly practical chain-free parsers based on the conventional
SLR and,LALR parsing methods. Detailed consideration
is given to use of 'default reductions' and related
techniques for achd.evfng compact representations of these
parsers. The resulting chain-free parsers are not only
faster than their ordinary counterparts, but probably
smaller too. We believe their advantages are such that they
should substantially replace other parsing methods currently
used in programming language compilers
Choosing grammars to support language processing courses
Teaching Language Processing courses is a hard task. The level of abstraction inherent to some of the basic concepts in the area and the technical skills required to implement efficient processors are responsible for the number of students that do not learn the subject and do not succeed to finish the course. In this paper we intend to list the main concepts involved in Language Processing subject, and identify the skills required to learn them. In this context, it is feasible to identify the difficulties that lead students to fail. This enables us to suggest some pragmatic ways to overcome those troubles. We will focus on the grammars suitable to motivate students and help them to learn easily the basic concepts. After identifying the characteristics of such grammars, some examples are presented to make concrete and clear our proposal. The contribution of this paper is the systematic way we approach the process of teaching Language Processing courses towards a successful learning activity.(undefined
Coverage directed algorithms for test suite construction from LR-automata
Thesis (MSc)--Stellenbosch University, 2022.ENGLISH ABSTRACT: Bugs in software can have disastrous results in terms of both economic cost and human lives. Parsers can have bugs, like any other type of software,
and must therefore be thoroughly tested in order to ensure that a parser recognizes its intended language accurately. However, parsers often need to recognize many different variations and combinations of grammar structures
which can make it time consuming and difficult to construct test suites by hand. We therefore require automated methods of test suite construction for these systems.
Currently, the majority of test suite construction algorithms focus on the grammar describing the language to be recognized by the parser. In this thesis we take a different approach. We consider the LR-automaton that
recognizes the target language and use the context information encoded in the automaton. Specifically, we define a new class of algorithm and coverage criteria over a variant of the LR-automaton that we define, called an LR-graph.
We define methods of constructing positive test suites, using paths over this LR-graph, as well as mutations on valid paths to construct negative test suites.
We evaluate the performance of our new algorithms against other state-of-the-art algorithms. We do this by comparing coverage achieved over various systems, some smaller systems used in a university level compilers course and other larger, real-world systems. We find good performance of our algorithms over these systems, when compared to algorithms that produce test suites of equivalent size.
Our evaluation has uncovered a problem in grammar-based testing algorithms that we call bias. Bias can lead to significant variation in coverage
achieved over a system, which can in turn lead to a flawed comparison of two
algorithms or unrealized performance when a test suite is used in practice.
We therefore define bias and measure it for all grammar-based test suite construction algorithms we use in this thesis.AFRIKAANSE OPSOMMING: Foute in sagteware kan rampspoedige resultate hˆe in terme van beide eko nomiese koste en menselewens. Ontleders kan foute hˆe soos enige ander
tipe sagteware en moet daarom deeglik getoets word om te verseker dat ’n
ontleder sy beoogde taal akkuraat herken. Ontleders moet egter dikwels baie
verskillende variasies en kombinasies van grammatikastrukture herken wat
dit tydrowend en moeilik kan maak om toetsreekse met die hand te bou.
Ons benodig dus outomatiese metodes van toetsreeks-konstruksie vir hierdie
stelsels.
Tans fokus die meeste toetsreeks-konstruksiealgoritmes op die grammatika
wat die taal beskryf wat deur die ontleder herken moet word. In hierdie tesis
volg ons ’n ander benadering. Ons beskou die LR-outomaat wat die teikentaal
herken en gebruik die konteksinligting wat in die outomaat ge¨enkodeer is.
Spesifiek, ons definieer ’n nuwe klas algoritme en dekkingskriteria oor ’n
variant van die LR-outomaat wat ons definieer, wat ’n LR-grafiek genoem
word. Ons definieer metodes om positiewe toetsreekse te konstrueer deur
paaie oor hierdie LR-grafiek te gebruik, asook mutasies op geldige paaie om
negatiewe toetsreekse te konstrueer.
Ons evalueer die werkverrigting van ons nuwe algoritmes teenoor ander
moderne algoritmes. Ons doen dit deur dekking wat oor verskeie stelsels
behaal is, te vergelyk, sommige kleiner stelsels wat in ’n samestellerskursus op universiteitsvlak en ander groter werklike stelsels gebruik word. Ons vind
goeie werkverrigting van ons algoritmes oor hierdie stelsels, in vergelyking
met algoritmes wat toetsreekse van ekwivalente grootte produseer.
Ons evaluering het ’n probleem in grammatika-gebaseerde toetsalgoritmes
ontdek wat ons vooroordeel noem. Vooroordeel kan lei tot aansienlike variasie
in dekking wat oor ’n stelsel behaal word, wat weer kan lei tot ’n gebrekkige
vergelyking van twee algoritmes of ongerealiseerde prestasie wanneer ’n toets reeks in die praktyk gebruik word. Ons definieer dus vooroordeel en meet dit
vir alle grammatika-gebaseerde toetsreeks-konstruksiealgoritmes wat ons in
hierdie tesis gebruik.Master
- …