The OT SIMPLE home page

This page contains documentation and source code for OT SIMPLE, a software tool for modelling analyses in the Optimality Theory framework (Prince & Smolensky 1993) on a computer.


OT SIMPLE - A construction-kit approach to Optimality Theory implementation

Markus Walther, University of Duesseldorf, Germany

This paper details a simple approach to implement Optimality Theory (OT, Prince & Smolensky 1993) on a computer, in part reusing standard system software. In a nutshell, OT's GENerating source is implemented as a BinProlog program interpreting a context-free specification of a GEN structural grammar according to a user-supplied input form. The resulting set of textually flattened candidate tree representations is passed to the CONstraint stage. Constraints are implemented by finite-state transducers specified as `sed' stream editor scripts that typically map illformed portions of the candidate to violation marks. EVALuation of candidates reduces to simple sorting: the violation-mark-annotated output leaving CON is fed into `sort', which orders candidates on the basis of the violation vector column of each line, thereby bringing the optimal candidate to the top. This approach gave rise to OT SIMPLE, the first freely available software tool for the OT framework to provide generic facilities for both GEN and CONstraint definition. Its practical applicability is demonstrated by modelling the OT analysis of apparent subtractive pluralization in Upper Hessian presented in Golston & Wiese (1996).


The paper is available both in A4 and US letter size. It has been posted to the Rutgers Optimality Archive and its European mirror as well as the archive for Language and Computation. Here is the BibTeX entry:

  author = 	 "Markus Walther",
  title = 	 "{OT SIMPLE} - {A} construction-kit approach to
		  {O}ptimality {T}heory implementation", 
  institution =  {Seminar f. Allgemeine Sprachwissenschaft, University
		  of D{\"u}sseldorf, Germany},
  year = 	 1996,
  type =	 "Arbeiten des Sonderforschungsbereichs 282 `Theorie
		  des Lexikons'",
  number =	 "Nr. 88",
  month =	 "October",
  note =	 "(ROA-152)"

System requirements

OT SIMPLE currently requires some brand of Unix as operating system, due to its usage of (Bourne) shell scripts and tools such as 'sort' and 'sed'.

It has actually been tested under the freely available Linux, version 1.0 on a 486/DX33 PC and under Solaris 2.3 on a SUN SparcStation 10. The exact range of Unixes supported in part depends on the current list of available ports of BinProlog.

BinProlog is used to implement GEN and therefore must be installed in order to run OT SIMPLE.

Reports of successful installation on different platforms are welcome and should be directed to the author. The same goes for plans to port OT SIMPLE to other operating systems.

Source code

The OT SIMPLE distribution is provided `as is' under the GNU General Public License. Here you can download version 1.0 (15 KBytes only!).

Other material on Computational Phonology

See my home page.

Markus Walther, Universität Düsseldorf