**Arvutaja**
(Estonian for "the one that computes") records a speech input,
interprets it as an expression or command, and evaluates it
(or carries it out) using an app on the device. Supported inputs
include
arithmetical expressions,
measurement unit and currency conversion expressions,
alarm clock / timer setting commands.

Arbitrarily long arithmetical expressions with numbers between
-10^{12} and 10^{12} (including some decimal numbers),
with the main operators ("plus", "minus", "times", "divided by",
"to the power of").

nine hundred and ninety nine billion nine hundred and ninety nine million nine hundred and ninety nine thousand nine hundred and ninety nine point nine |

pie plus one minus two times three divided by four to the power of five |

minus twelve point thirty four plus zero point one hundred and twelve |

Arvutaja computes the result but links to WolframAlpha for a more detailed analysis.

Unit conversion expressions with about 50 main units and currency conversion with about 15 currencies.

convert thirty two point five Fahrenheits to Celsius |

convert one hundred point one miles per hours squared to meters per seconds squared |

convert two cubic inches to gallons |

convert twelve thousand three hundred and forty five Norwegian crowns to Euros |

convert half American dollars to New Zealand dollars |

Arvutaja computes the result (unless the expression is a currency conversion expression) but links to WolframAlpha for a more detailed analysis.

Commands for setting the alarm clock and the timer.

set the alarm at seven thirty one |

set the timer for fifteen minutes |

set the timer for two hours and fifteen minutes |

Arvutaja forwards the command to the device's alarm clock app.

Dialing a phone number by listing its digits.

dial one one eight two |

Arvutaja forwards the command to the device's phone app.

In principle the input must follow the fixed syntactic structure displayed in the above example sentences, but some variation is supported, e.g. requests can start with "please" and calculations can be formed by "how much is … in …".

please set the timer for fifteen minutes |

please convert one speed of light to meters per second |

how much is one speed of light in meters per second |

Arvutaja supports also Estonian language input, with additional queries such as Estonian address queries.

Arvutaja uses grammar-based speech recognition. The grammars are written using the Grammatical Framework and developed in the Grammars project. In addition to many example sentences, also the full source code of the grammars is available, e.g. to find out which units are available in English look at the source code of UnitEng.gf.

Grammar-aware speech recognition is provided by the Kõnele app.