The syntax of
The syntax of
NB: This assumes that grammaticality is binary
The problem of determining whether
Some decision problems are undecidable = there is no general way of answering them =
The fact that we can (quickly) determine (un)grammataticality suggests that the syntax function
Some computable functions are 'simpler' than others
Correspondingly there are different levels of syntaxes/languages
By J. Finkelstein - CC BY-SA 3.0, Link
The syntactic rules of
The syntax of regular languages is described by a finite set of production rules
A production rule of a regular language has to look like:
where
One member (usually
Production rules
Every finite language is a regular language (proof omitted)
What we defined above is right regular languages
Every regular language is recognised by a finite state automaton, and every language recognised by a finite state automaton is a regular language (proof omitted)
A finite state automaton is a kind of machine that does not have long-term memory
Regular languages can encode certain types of dependencies
However, regular languages cannot count (with no limit), so there is no way to formulate dependencies like the following (proof omitted)
Natural languages show such dependencies, e.g., centre embedding
It's been claimed that birdsongs are regular languages
Context free languages are generated by productions rules of the form:
where
Context free languages can have center embedding dependencies, so more powerful than regular languages
Every context free language is recognised by a push-down automaton, and every language recognised by a push-down automaton is a context free language (proof omitted)
A push-down automaton is a machine that has a stack memory
There are languages that are not context free, e.g.,
Syntacticians argue that some natural languages have unbounded numbers of cross-serial dependencies, so are not context free
Chomsky's Transformational Grammar:
The next class of languages in the Chomsky hierarchy is context sensitive languages, whose production rules are either of the following:
Natural language syntax does not have the full power of context-free languages
Natural language is mostly context free, but it goes a bit outside of it
Mildly context free languages
No need to make syntactic rules for the entire language
Focus on some constructions, e.g.
Decide whether to have a regular language or a context free language (or something stronger), and write down some rules
Make sure to have recursion so that your language will be infinite
Natural languages differ in word order