Skip to content

Commit 62b31f2

Browse files
author
Maarten
committed
Cosmetic changes
1 parent f428ccb commit 62b31f2

File tree

2 files changed

+3
-10
lines changed

2 files changed

+3
-10
lines changed

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
# Nondeterministic finite state automata
2-
This is a library that implement [nondeterminstic finite state atuomata](https://en.wikipedia.org/wiki/Nondeterministic_finite_automaton) (NFAs) in Java. You can think of NFAs as flowcharts: you are in a state, take some action, and arrive in a new state. The action can produce a side effect, such as writing a string to a tape.
2+
This is a library that provides an implemention [nondeterminstic finite state automata](https://en.wikipedia.org/wiki/Nondeterministic_finite_automaton) (NFAs) in Java. You can think of NFAs as flowcharts: you are in a state, take some action, and arrive in a new state. The action can produce a side effect, such as writing a string to a tape.
33

44
## Why?
5-
There are already a bunch of libraries out there which work with deterministic finite state automata, and there is a well-known result in automata theory which says that for any language recognized by an NFA, we can construct a DFA which recognizes the same language.
5+
There are already a bunch of libraries out there which work with deterministic finite state automata (DFAs), and there is a well-known result in automata theory which says that for any language recognized by an NFA, we can construct a DFA which recognizes the same language.
66

77
There are two problems, however:
8-
* Determinizing an NFA has an exponential blowup in the number of states (|stated(DFA)| = O(|states(NFA)|²)
8+
* Determinizing an NFA has an exponential blowup in the number of states.
99
* An NFA may have side-effects, which may be problematic with the standard way of determinizing NFAs. Indeed, [some non-deterministic finite state transducers have no equivalent deterministic finite state transducer](http://www.let.rug.nl/~vannoord/papers/preds/node22.html).
1010

1111
On a side note, [Allauzen & Mohri](http://www.cs.nyu.edu/~allauzen/pdf/twins.pdf) have described efficient algorithms for determining when a transducer is in fact determinizable, and this would be a nice feature to implement.

src/main/java/org/leibnizcenter/nfa/TryNfa.java

Lines changed: 0 additions & 7 deletions
This file was deleted.

0 commit comments

Comments
 (0)