Patent ID: 9710435
Date: 2017-07-18
CPC Classifications: G06F

Claim:
1. An apparatus comprising: a processor; a computer readable memory; a user interface to receive user inputs and to display outputs to a user; and wherein: the computer readable memory contains a series of computer-executable instructions to be executed by the processor which enable the formulation of a mathematical expression by the user via the user interface, the mathematical expression comprising a selection of objects from a library of object types contained in the computer readable memory, the object types comprising primitive objects and non-primitive objects, wherein non-primitive objects have at least one field which in turn can host additional objects, and primitive objects have no fields, and wherein: the mathematical expression formulated by the user is defined by a single computer readable data structure which is generated automatically by the series of computer-executable instructions in response to the user inputs, and is stored in the computer readable memory; each object and each field is defined by a mathematical significance assigned thereto within the single computer readable data structure; the single computer readable data structure combines functions of a content tree data structure, and of a presentation tree data structure, for the mathematical expression; the single computer readable data structure contains presentation data sufficient to enable complete, automatic formatting of the mathematical expression for the display; the single computer readable data structure contains content data sufficient to enable automatic computation of the mathematical expression by the processor; the user interface enables the user to edit the mathematical expression; editing of the mathematical expression by the user via the user interface results in automatic modification of the single computer readable data structure; and the series of computer-executable instructions include a series of steps to identify the user inputs with at least some of the objects, and to display the mathematical expression defined by the single computer readable data structure via the display.