Library

Contributing

Submit a machine

Anything you can build in AutomataStudio can be listed here. The library runs it before it is published, and the marks it earns are the ones it proved.

How

  1. Build it in AutomataStudio, and give it a title, a description and a few example words on its card — the examples are what earn Tests pass.
  2. Open More ▸ Library ▸ Submit a machine. The app runs the library’s checks first, and tells you what the machine will earn and whether its language is already listed.
  3. Press Submit on GitHub. It opens the submission form with everything filled in; you only have to press Submit new issue.
  4. The library checks it again, opens a pull request and posts its report on your issue. A maintainer merges it, and it appears here and in the app.

No app to hand? Fill in the form yourself and paste a share link or attach the .automaton file. Machines are published under CC BY 4.0 or CC0 — you choose — and credited to the GitHub account that submits them.

An essay

A machine's page can carry an essay: Markdown written in the app's submit form — or opened from a .md file you already have — with facts and figures filled in by the library. Writing an essay shows everything one can hold.

What the marks mean

Tests pass
Every accept, reject and output example the author declared was checked by running the machine.
Deterministic
No state has two transitions that could fire on the same input.
Minimal
No DFA for this language has fewer states.
Halts
Run from a blank tape, the machine stops. The step count is exact.
Never halts
Proven never to halt from a blank tape, by the method named.