Hello list members,

I am writing to announce a new paper, entitled "The computational power of
parsing expression grammars". It appears on ArXiv at the address:
https://arxiv.org/abs/1902.08272

Any feedback will be most welcome.

Here is an abstract for the paper:

We propose a new computational model, the scaffolding automaton, and prove
that it exactly characterises the computational power of parsing expression
grammars (PEGs). Using this characterisation we show that:

* PEGs have unexpected power and semantics. We present several PEGs with
surprising behaviour, and languages which, unexpectedly, have PEGs,
including a PEG for the language of palindromes whose length is a power of
two, and a PEG for a ``counting language''.

* We show that PEGs are computationally ``universal'', in the following
sense:  take any computable function f:{0,1}^* -> {0,1}^*; then there
exists a computable function g: :{0,1}^* -> N such that the set
{ f(x) #^{g(x)} x | x \in {0,1}^* }
has a PEG (where #^{g(x)} means g(x)-many separator symbols `#'). This
result may be used to construct a PEG language which is complete for P
under logspace reductions.

* We show that there can be no pumping lemma for PEGs. There is no total
computable function A with the following property: for every PEG G, there
exists n_0 such that for every string x \in L(G) of size |x| \ge n_0, the
output y = A(G, x) is in L(G) and has |y| > |x|.

* We show that PEGs are strongly non real-time for Turing machines: There
exists a language with a PEG, such that neither it nor its reverse can be
recognised by any multi-tape online Turing machine which is allowed to do
only o(n/\log n) steps after reading each input symbol.
_______________________________________________
PEG mailing list
PEG@lists.csail.mit.edu
https://lists.csail.mit.edu/mailman/listinfo/peg

Reply via email to