Fork me on GitHub
Browse by Topic

Logics of Phonological Reasoning

Graf, Thomas

Abstract Inspired by Kracht (2003) and Potts and Pullum (2002), who use tools from mathematical logic in their investigation of phonological theories, I develop an extendable modal logic over string structures, which in turn is used to formalize a specific phonological theory, Government Phonology. Building on this logical foundation, I compare Government Phonology to SPE and arrive at the surprising result that Government Phonology corresponds to a very weak fragment of SPE yet can attain the latter’s full expressivity by extending the power of feature spreading. I then exhibit two attested phonological phenomena that require moving beyond the power of standard Government Phonology: n-retroflexion in Sanskrit and primary stress assignment in Creek and Cairene Arabic. I further identify several other axes along which Government Phonology can be generalized, moving us towards a parametric metatheory of phonology.

These results are of interest to linguists as they (i) establish a lower bound on the power every descriptively adequate phonological theory has to make available, (ii) tell us how this power can be measured in a precise way, and (iii) show how different phonological proposals are related to each other, thus complementing the well-established empirical methods of theory comparison. Computational phonologists, on the other hand, will appreciate the explicit formalization of a subregular theory of phonology and the (implicit) demonstration that the majority of empirical phenomena does not need full finite-state expressivity.

Most of the results reported herein can also be found in a series of papers of mine from 2010. This thesis, however, vastly exceeds them in terms of clarity, exhaustiveness and preciseness, thanks to the lack of page restrictions.

Files [pdf] [code]

  author    = {Graf, Thomas},
  title     = {Logics of Phonological Reasoning},
  year      = {2010},
  school    = {University of California, Los Angeles},
  url       = {}