BNF (Backus Naur Form) notation, as introduced in the Algol 60 report, was followed
by numerous notational variants (EBNF ISO (1996), ABNF Crocker et al. (2008), etc.),
and later by a new metalanguage which is used for discussing structured objects in Computer Science and Mathematical Logic. We call this latter offspring of BNF MBNF
(Math BNF). MBNF is sometimes called “abstract syntax”. MBNF can express structured objects that cannot be serialised as finite strings. What MBNF and other BNF
variants share is the use of production rules, whose form is given below, which state
that “every instance of ◦i
for i ∈ {1, . . . , n} is also an instance of •”.
• ::= ◦1 | · · · | ◦n
This thesis studies BNF and its variant forms and contrasts them with MBNF production rules. We show via a series of detailed examples and lemmas that MBNF, differs
substantially from BNF and its variants in how it is written, the operations it allows,
and the sets of entities it defines. We demonstrate with an example and a proof that
MBNF has features that, when combined, could make MBNF rule sets inconsistent.
Readers do not have a document which tells them how to read MBNF and have to learn
MBNF through a process of cultural initiation. We propose a framework, MathSyn,
that handles most uses of MBNF one might encounter in the wild
Is data on this page outdated, violates copyrights or anything else? Report the problem now and we will take corresponding actions after reviewing your request.