Arto Anttila


T-Order Generator

Arto Anttila and Curtis Andrus, Stanford University

In Optimality Theory (Prince and Smolensky 1993), a set of grammatical constraints defines a space of possible languages. This space is called the FACTORIAL TYPOLOGY. Every factorial typology defines a T-ORDER, i.e. a set of implicational universals that hold among <input, output> pairs. T-ORDER GENERATOR is a free open-source Python program that generates T-orders. The input to the program is a constraint violation tableau; the output is a T-order visualized as a directed graph. This structure has a useful application in the study of variation: it imposes universal limits on the quantitative variation permitted by a constraint set. These limits hold under several theories of variation, including Multiple Grammars, Partially Ordered Grammars, and Stochastic Optimality Theory.

To get started, download the program and the sample input file t-deletion.xls that describes the quantitative patterning of t/d-deletion in a fictitious dialect of English.

Download T-Order Generator (development version, December 12, 2009).

What are T-Orders? (Anttila and Andrus 2006).

Update, February 6, 2015

The current version of T-Order Generator computes T-orders directly from constraint violation profiles using Prince's ELEMENTARY RANKING CONDITIONS (ERCs, see e.g. Prince 2006) which remain invisible to the user.

Drawing graphs: You can save T-orders as plain text ("Save") or as directed graphs ("Save Graph"). To draw graphs, you must have Graphviz installed. When saving a graph file, save it in the DOT format. Then use the dot program from to generate the image. Go to the command prompt (Start Menu -> Programs -> Accessories), move into the directory where your files are, and run the program using a command like this:

dot -o output.png -Tpng

This reads in, and produces a PNG image named output.png.

A priori rankings: The program supports OTSoft table-style a priori ranking files.

Precision and recall: You can calculate precision and recall to assess how well the T-order fits the data; for examples, see e.g. Anttila 2008.

Compatibility with OTSoft: T-Order Generator supports two alternative methods of calculating T-orders: the direct method that uses ERCs and an indirect method that uses factorial typologies produced by OTSoft. If you want to use the indirect method, follow the instructions in Anttila and Andrus 2006. OTSoft is available here.

Please send questions, comments, and bug reports, to Arto Anttila.

Back to Arto Anttila's home page