I am currently a professor of theoretical computer science
at the Chebyshev Laboratory of St. Petersburg State University.
My research interests belong to the area
of formal language and automata theory,
and my main subjects are
formal grammars and their parsing algorithms,
language equations in connection with computability,
and descriptional complexity of finite automata.
Formerly, I worked
at the Department of Mathematics and Statistics
of the University of Turku,
first as a research fellow of the Academy of Finland (2006–2011),
and then as a researcher of the Turku Collegium for Science and Medicine (2012–2014),
as a researcher on a temporary contract (2015),
and as a grantee of the Finnish Cultural Foundation.
The latter grant is currently on hold
and shall be resumed at the next available opportunity.
- My curriculum vitae:
(the 29th of July, 2016)
- Current status of my refereeing queue:
5 papers under review (of them 1 overdue).
***NB: outdated data***
- My office is Quantum 395.
- Current status of the Formal Grammars draft:
418 pages, 80 figures, 595 names in the name index. (the 29th of July, 2016)
- How to pronounce my family name:
as [o'hotin] or as [ə'hotin];
in particular, as Ohotin in English and in Finnish,
and as Ochotin in Western Slavic languages and in German.
Research on formal grammars
My research on grammars
began with understanding context-free grammars
as a logic for representing syntax,
which prompted me to investigate
the power of Boolean connectives in this logic.
This outlook led me
to conjunctive grammars,
which allow a conjunction operation in their rules,
and to Boolean grammars,
which further allow the negation.
My subsequent research has shown
that the main practically relevant properties of ordinary (context-free) grammars,
including most of the parsing algorithms,
equally hold for Boolean grammars.
These developments significantly change
the perspective on formal grammars in general,
and now my mission is to work out
an up-to-date theory of formal grammars.
Research on language equations
Equations with formal languages as unknowns
naturally arise when reasoning about sets of strings,
and they have been used in many applied areas of computer science.
These applications would benefit
from a general theory of language equations.
I have been working towards such a theory,
exploring the relations between language equations and computation,
and tracing the border between their decidability and undecidability.
The latest findings are that, in short,
almost all language equations are computationally complete,
including those over a one-letter alphabet
and with concatenation as the only operation.
Research on descriptional complexity of automata
It is well-known that
converting a nondeterministic finite automaton (NFA)
to an equivalent deterministic one (DFA)
requires exponentially many states;
representing a Kleene star of a DFA
also leads to an exponential blowup
in the size of description.
For ordinary DFAs and NFAs,
all problems of this kind have long been solved.
I am occasionally investigating similar problems
for a few related models, such as
unambiguous finite automata (UFA),
two-way finite automata (2DFA, 2NFA)
and input-driven pushdown automata (IDPDA, also known as visibly pushdown automata).
Current and recent teaching
- Dr. Artur Jeż
(Ph. D. student at the University of Wrocław, Poland;
supervised jointly with Krzysztof Loryś),
thesis Conjunctive grammars and equations over sets of natural numbers,
defended on the 14th of September, 2010, with distinction;
Polish Prime Minister's Award for an Outstanding Ph. D. thesis (2011).
- Dr. Tommi Lehtinen
(Ph. D. student at the University of Turku, 2007–2013),
thesis Numbers and languages,
defended on the 15th of March, 2013.
- Dr. Mikhail Barash
(Ph. D. student at the University of Turku, 2011–2015;
supervised jointly with Tero Harju),
thesis Defining contexts in context-free grammars,
defended on the 25th of September, 2015.
- Whale Calf, a parser generator for conjunctive grammars.
- dfalib, a C++ class library for basic operations on finite automata.
(Announced in July 2012)
Last updated: September A.D. 2016.