Introduction

MathBrush [pdf] is a pen-based system for interactive mathematics. The system allows users to write mathematical expressions as they would using a pen and paper, and manipulate the expressions using computer algebra system operations that are invoked by pen-based interaction. Users can also edit the input and ouput expressions or parts of them.

Despite the benefits of computer algebra systems (CAS) such as Maple, many users prefer a pen-and-paper approach. This is mainly because a pen-and-paper approach does not involve translating the mathematics into a specific CAS-based representation. This motivated our project to bridge the gap between the intuitiveness of free-form pen-and-paper and the power of a CAS.

Recognition

The second generation of the MathBrush system contains many innovations that enhance the functionality and usability of our system. Some of them are:

  • Real-time semantic-based recognition of hand-drawn mathematical expressions.
  • Grammar based parser that provides multiple interpretations of recognized expressions.
  • The ability for the user to quickly and easily correct misrecognized expressions or subexpressions by selecting alternate interpretations from a ranked list.
  • The user can correct single characters, sub-expressions or complete expressions with just a few strokes.
  • The user can correct expressions any time during the input.


  • Trainable character recognizer.


  • Support for matrices, including short forms of matrices.


Functionality

Some of the computational functionality of MathBrush is as follows:

  • Connects to Maple or Mathematica as a computer algebra system. Users can simple draw the equations they are interested in, and select operations from context menus.
  • Through the use of context menus, users can operate on the expressions using the power of a CAS, with out specific knowledge of the CAS.


  • Supports 2D and 3D graphing operations, and pen based manipulations of the graphs.
  • Multi-platform support.
  • Manipulate output expressions either by selecting parts of expressions and operate using CAS or using sub-expressions as part of new input expression

For more information please consult our publications and our demos.

Objectives
  • Build a pen-based math system to allow the user to follow a pen and paper paradigm for input and output while taking advantage of the power of CAS to manipulate the mathematical expression.
  • Explore the interaction between the user and the recognition techniques, to support the most productive user experience in a complex recognition environment.
  • Study the key issues when combining pen-based interfaces with Computer Algebra Systems (CAS) such as Maple.
MathBrush, Symbolic Computation Group
Cheriton School of Computer Science
University of Waterloo
200 University Avenue West
Waterloo, Ontario, Canada N2L 3G1
519 888 4567

| http://www.scg.uwaterloo.ca