Ket is a minimalist approach. It's a maths text editor.
The basic idea is that algebra is just rapid text editing.
Equations are written in mark-down, displayed in conventional notation and edited with Vim commands.
https://sourceforge.net/projects/ket/
For most trivial algebra, it's quicker to use paper and pencil than a full algebra system. Ket is a faster alternative with the benefit of clipboards, save/load and export to LaTeX and HTML.
Most algebra consists of recombining existing expressions. These can be added in plain text and substituted into one another by clicking and dragging one equation into another. You can then reorganize the resulting equation using click-and-drag algebra by dragging terms to different parts of the equation, e.g.
y=mx+c
y-c=mx
(y-c)/m=x
x=(y-c)/m.
Most real-world algebra problems require translation from real-world information into a coherent mathematical framework. For simple cases, the standard approach is the back-of-the-envelope calculation. This shows only enough working to keep the idea organized in your mind as you solve it. This part of a maths problem is more akin to writing the first draft of an essay. That is, you list relevant known equations and solution fragments which you organize into a coherent narrative.
For this you need an algebra-centred text editor. Most of the time spend doing algebra on computers or on paper is writing and rewriting respectively. To avoid this, Ket is a modal editor (built around Vim-like commands) in which keyboard letters correspond to simple editing commands. That is, the editor focuses on transforming existing expressions and only incidentally on adding new ones. In addition to redrafting working, with each command, the user performs an algebraic step.
A text editor represents a line of text as a list of characters. Ket represents an equation as a tree of functions, constants and variables. And instead of a cursor editing around a particular character, editing takes place around a tree branch. So editing commands edit a function, variable or value at a time in plain text while keeping the larger whole in conventional mathematical notation. And because each command is a single key press, each editing step is as quick as touch typing. Furthermore, while some commands perform algebraic transformations, others simply edit the data structure. This is analogous to algebra on paper where symbols are cancelled by scoring them out.
A text editor represents an essay as a list of lines of characters. Ket represents a document as a list of equations where each is represented as a tree of functions, constants and variables. Instead of a cursor editing around a particular character, editing takes place around a tree branch. So editing commands edit a function, variable or value at a time in plain text while keeping the larger whole in conventional mathematical notation. And because each command is a single key press, each editing step is as quick as touch typing. Furthermore, while some commands perform algebraic transformations, others simply edit the data structure.
I've been writing an algebra editor analogous to Vim/Emacs. Unlike English, maths is too slow to re-type while you perform algebra. Instead, insert expressions once then use keyboard shortcuts to edit and combine existing expressions.
It is interesting because it's the only algebra system in which the user actually performs the algebra. With practice, edits are as fast as maths on paper, but without all of the redundant re-writing. Similar to the sense of flow you get when programming with Vim, this leads to a sense of immersion in the maths.
I've been writing an algebra editor. It automates much of the details of doing maths while letting you select or move equation fragments. It has been designed around solving back-of-the-envelope calculations so it starts and runs quickly, it's cross platform (a single executable Java *.jar file) and open source (http://sourceforge.net/projects/ket/). Once you get good at computer programming or maths on paper, problem solving becomes relaxed and automatic. Hopefully the same is true of Ket.
Just as you would write an essay by repeatedly redrafting it, real-world maths problems often require as much effort be put into understanding and clarifying problems as are required to solve them. And yet existing maths programs assume you know the question and need only break it into a series of standard steps (integrate, solve etc.) and leave the details to the computer. When doing maths on paper, you learn to recognize fragments and how to move them around. The intuitions are quite different.
The user interface lets you add functions and symbols which can alternatively be written in plain text, e.g. "sin(\alpha)^2=sqrt(x)". Equations are viewed in conventional mathematics notion and are updated quickly and smoothly. Click-and-dragging equation fragments lets you solve or substitute for variables and - with practice - perform algebra by various keyboard shortcuts.