SIMPL · Specification and Implementation of Pattern Languages
7РП — „Хора“ (Действия „Мария Кюри“)
- Период
- 2010-04-01 → 2012-03-31
- Финансиране от ЕС
- 173 903 €
- Участници
- 1
- Схема
- MC-IEF
Линиите свързват координатора с партньорите.
Накратко на български
Регулярните изрази, използвани за търсене на шаблони в текстове, се анализират чрез математически методи и софтуера Coq. Това помага за създаването на по-точни алгоритми за обработка на данни, разпознаване на реч и работа на търсачки.
Кратко обяснение, генерирано от езиков модел по текста на CORDIS. Оригиналът е по-долу.
Резултати накратко
Specification and Implementation of Pattern Languages
The project SImPL1 was dedicated to provably-correct extensions of regular expressions with notions of a pattern and a backreference, and to mechanisations of decision algorithms on regular expressions in the proof assistant Coq [1]. By a coincidence, simpl is the name of a computational tactic in Coq that is used for computing proofs following the method of computational (a.k.a. small-scale) reflection, one of the key methods employed in SImPL. Regular expressions [12, 10] are a formalism ideally suited to specification and implementation with formal methods. They are essential for text processing and form the basis of most markup schema languages. Regular expressions are useful in the production of syntax highlighting systems, data validation, speech processing, optical character recognition, and in many other situations when we attempt to recognise patterns in data. Extended versions of regular expressions are used in search engines such as Google Code Search. In fact, there is a difference between what is understood by the term regular expression in programming and in theoretical computer science. Different software based on regular expressions has in each case its own “RegEx flavour”: ECMAScript, Perl-style, GNU RegEx, Microsoft Word, POSIX Basic/Extended RegEx (with extensions), Vim, and many others. In this project, I worked with an algebraic definition of regular expression matching that rests upon the concept of partial derivatives. I appropriately extended algebraic matching of regular expressions to account for backreferences. The project has yielded several peer-refereed papers [7, 3, 6, 5, 9, 8]. The following objectives have been duly reached: Objective 1. Theoretical representation of extended, or, practical, regular expressions in constructive dependent type theory. Objective 2. A Coq library for regular languages and automata that includes features not present in available related libraries, such as backreferences and partial derivatives of regular expressions. Objective 3. A formally certified grep-like extended regular expression parser (in other words, a formally certified compiler of extended regular expressions into finite automata). A much broader aim of SImPL was helping to provide robust and transparent data infrastructure for the future Internet (which is a part of the European Commission ICT Challenge 1: Pervasive and Trustworthy Network and Service Infrastructures). The primary object of research was data, in contrast with computation, in the sense of the duality emphasised in the seminal paper [2] with respect to [11]. Therefore the intended application of the results of the project is formal data certification. Application to proving computational correctness was not perceived as a specific goal. However, due to the foundational nature of regular expressions, for example, in relationship to concurrency, the results on decision methods for extended regular expressions can be employed in proving correctness of data-parallelism.
Текст от CORDIS, на английски · Данни: CORDIS, © Европейски съюз
Цел на проекта
The proposal is aimed at helping to provide robust and transparent data infrastructure for the future Internet (which is a part of the European Commission ICT Challenge 1: Pervasive and Trustworthy Network and Service Infrastructures). The primary object of research is data, in contrast with computation. Therefore we will be interested mainly in kinds of formal data certification rather than in certified interpreters, etc. This however does not exclude possibilities for a crossroad research where these two paradigms overlap. Research objectives: 1) Theoretical representation of extended, or, practical, regular expressions in constructive dependent type theory. (We will overcome redundant assumptions regarding equality of languages that lay in the foundation of today's simply typed theories of practical regular expressions.) 2) A Coq library for regular languages and automata that includes features not present in available related libraries, such as extended regular expressions and partial derivatives of regular expressions; and a Coq library for pattern languages that provides full support for backreferences. 3) A formally certified compiler of patterns into automata; a formally certified grep-like pattern parser. 4) A formally certified UTF-8 encoder/decoder. 5) A formally certified data description language for describing binary data format specifications with a possibility to prove meta-properties of data specifications, such as completeness or consistency; in other words, a language for production of formally certified specifications of data formats. Main research questions: 1) What is the efficiency of the derivative approach in computation of context-sensitive features or extended regular expressions? 2) How can one define partial derivatives of regular expressions with backreferences? 3) What is the dependent type of partial derivatives of regular expressions with backreferences?
Оригинален текст от CORDIS (на английски).
Участници
- THE UNIVERSITY COURT OF THE UNIVERSITY OF ST ANDREWS · ST ANDREWSКоординаторОбединеното кралство
Връзки
Данни: CORDIS, © Европейски съюз
