Attempto Controlled English (ACE) - a subset of standard English - is a controlled natural language specifically constructed to write specifications. ACE specifications are computer-processable and can be unambiguously translated into first-order logic. Though ACE seems perfectly natural, it is a formal language with the semantics of the underlying logic language.
The Attempto system offers users a natural language interface for the automatic analysis of ACE specifications such as query answering, consistency verification and execution.
In ACE we specified a simple automated teller machine, the well-known library data base problem, and a number of smaller problems. Furthermore, we used ACE as input language to the model generator Finfimo. Currently, we are investigating the use of ACE for medical documentation, for web site synthesis, and for the synthesis of constraint-logic programs.