This project is read-only.

Sym is a symbolic computation application by SymbolicComputation.com

Sym allows the definition of user defined algebraic laws that can be used to transform and solve algebra problems.

Sym compiles with the free Visual Studio 2010 C# Express.  It should work with any of the full versions of Visual Studio 2010 or Visual Studio 2012.

Consider the following transform:

a*b~b*a

Read this as a times b transforms to b times a.  I use the ~ symbol to indicate a transformation.

a and b can be entire functions, e.g:

(2+3)*8 transforms to 8*(2+3) when transformed by the transform above.

Sym can read and use transforms that use the above syntax, e.g:

a*(b+c)~(a*b+a*c)
a*b+a*c~a*(b+c)
a/c+b/c~(a+b)/c
(a+b)/c~(a/c+b/c)

I've tested over 50 transforms so far.  They are used by Sym to simplify and isolate variables.

There is more info on transformations here.

Calculus and vector transforms are coming soon, both have been tested to a limited extent but I haven't uploaded them yet.

Sym uses c# notation to define mathematical equations, multiplication is symbolized by the '*' sign, etc. The notation is similar to the notation used by many computer programming languages. You have to use a multiplication sign everywhere there is a multiplication. If you are not familiar with the notation used by C# to write mathematical expressions, you can Google C# for further information.

All of the symbolic computation code is contained in a class library that is distinct from the UI code so that you can integrate it into your projects.

Sym is built on top of Microsoft's Roslyn. Roslyn is a c# compiler service. This puts the Sym code in a good position to be used to refactor and generate code in addition to performing the usual symbolic computation functions.

Last edited Jun 9, 2013 at 4:39 AM by WCH, version 23