Using such technologies as XLink,XPath 1.0, 2.0 ,XPointer to link / connect / associate XML documents and sub-documents (fragments) systems such as XBRL are able to provide finely grained metadata which is used to provide 'semantics' (ie meaning) for 'data documents'. Rather than having these semantics explicitly embedded in the source document the links allow external (to the source document) metadata to be maintained. Multiple multidirectional links are permitted, allowing for the development of a rich metadata and therfore rich semantics (referencing the source document(s)).
There are computer ontologies for geometry and mathematics, such as the NASA JPL SWEET 2.x. duMontier has defined an example ontology which depicts the visual/semantics for a bar graph instance.
MathML has a built-in facility whereby external references can be used to further refine / depict the semantics of mathematic things depicted by a MathML (file) instance. For example, in MathML one can visually depict an equation x2 - x1 / y2 - y1, (much more attractively than can Yahoo groups) and each of the items: x1, x2, y1, y2 can have external references defined. If, among those external references, there are 'pointers to' mathematical ontologies and more specifically references to ontological entries such as 'scalar' and 'variable' then computer logic (ie inferencing) can be applied such that the computer can have a glimmer of ""understanding"" of the 'meaning' (use!) of x1,x2, y1, y2. They are scalar variables. Using the mathematical ontology to examine math semantics one can determine that variables are used in ('part of'!, ie a constituent of) 'equations', and that 'equations' can be used to represent quantities and 'actions' in the real world.
Have a look at duMontier's bar-graph ontology. It is an example of meaning=use which I have just mentioned in the previous paragraph.
Furthermore, the ensemble of x2 - x1 / y2 - y1 can be detected (via the mathematical ontology) as being (an instance of) 'derivative'. The ontology has information about what derivatives are and to some extent in what form they occur in larger mathematical abstractions.
'The derivative is a measure of how a function changes as its input changes. Loosely speaking, a derivative can be thought of as how much one quantity is changing in response to changes in some other quantity; for example, the derivative of the position of a moving object with respect to time is the object's instantaneous velocity. Conversely, the integral of the object's velocity over time is how much the object's position changes from the time when the integral begins to the time when the integral ends.
The process of finding a derivative is called differentiation. The reverse process is called antidifferentiation. The fundamental theorem of calculus states that antidifferentiation is the same as integration. Differentiation and integration constitute the two fundamental operations in single-variable calculus.' Wiki
(( (( derivative
how .........................[not when nor why]
a function changes as its input changes.
I suggest, if the steps of a process are represented by a directed graph then graph isomorphism can be used to 'perceive'/detect an instance/occurrence of that process. y2,y1,x2,x1,-(subtraction),/(division),m(slope) are the 'components' of "slope of y=f(x)". recognizing the process of taking the slope of the function (y=f(x)) is done by detecting that the graph of the steps used to use the 'components' of the process is isomorphic with the definition-graph for taking the slope of a function (of type y=f(x)). A (non-bifurcating) directed graph can be represented by means of an ordered-list.
An SVG program might be used to input a sequence of pairs of numbers and to plot the resulting curve. This is common. What would not be common is if, in this scenario, one were to click some point on the displayed curve and select 'tell me about this' from a drop down menu entry. The 'tell me about this' entry starts up a program which runs a set of question answering programs. Some of the questions are: is the point where the click occurred on an SVG thing such as line, circle, path etc? Is this thing part of an SVG 'group' (element content)? is the point 'inside' or 'outside' some figure (ie what is its boundedness)?
If the clicked location was on a point in the graph of the read-in number pairs then the program could institute mathematical investigations. (Like is it 'continuous', is it differentiable, yadda yadda. This knowledge comes from the mathematical ontology.
'Tell me about' is of interest to a user because mathematical-knowledge can be applied to discovering things about visually-depicted stuff. Is the grapg curve from above differentiable? What does taking a sequence of those tell ME the user? Well it tells me that there are places where the curve is going 'up' and places where it is going 'down'. It can tell me 'how quickly' that happens. It can give me a simple linear interpretation of the whole curve, or a Gaussian Quadrature. (and hopefully the meaning / upshot of that GQ, in simple English).
The point is that the machine, on its own, can apply 'thinking like a mathematician' by means of applying 'logic' (inferencing technologies).