Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is symbolic computation?

Tags:

According to wiki:

In mathematics and computer science, computer algebra, also called symbolic computation or algebraic computation is a scientific area that refers to the study and development of algorithms and software for manipulating mathematical expressions and other mathematical objects

Does symbolic computation focus on symbol manipulation and computation? Lisp program is written in the form of an AST with atoms as leaves. Lisp is said to be language for symbolic computing. Does it mean that in symbolic computation, it is:

  • all about symbols (symbols are atoms or non-atom expressions in Lisp)
  • every symbol is assigned a semantic
  • symbolic computation is a paradigm that orients programmers to focus on working with symbols and semantics (a semantic can be an atom or expression that does something) and the relationships between symbols, as opposed to think that data structure and code are two separated entities.
  • program design is language design, based on symbol composition/manipulation and semantic assignment.

According to this question, the opposite of symbolic computation is numeric computation. What's the primary difference between these two? When I work with Octave (I'm studying it), I have to work with numbers a lot and have to guess the meaning of those magic numbers many times. Is this a numerical computation focus?

like image 905
Amumu Avatar asked May 06 '13 09:05

Amumu


People also ask

What is symbolic computation used for?

Symbolic computation lets you express and solve mathematical problems the way you think about mathematical problems-using variables, mathematical formulas, symbols such as π and ∞, and mathematical functions.

What is symbolic computation in MATLAB?

Symbolic Math Toolbox™ enables you to perform symbolic computations from the MATLAB® command line by defining a special data type — symbolic objects. Functions are called using the familiar MATLAB syntax and are available for integration, differentiation, simplification, equation solving, and other mathematical tasks.

What is the difference between symbolic and numerical computation?

In numeric arithmetic, you represent numbers in floating-point format using either double precision or variable precision. In symbolic arithmetic, you represent numbers in their exact form.

Which of the following is used in symbolic computing *?

Lisp is said to be language for symbolic computing.


2 Answers

Symbolic computation is one that emphasizes term rewriting over evaluation (e-value-ation, extracting the value). Symbols (also called expressions) are rewritable terms, values imply a loss or an end to rewritability. In a way, symbols are more abstract, values more concrete.

What's the answer to 3/9? A symbolic answer would be (a representation of) 1/3. A value answer would be 0.333333333, to however many decimals you care. Notice there's a loss of precision (and thus rewritability) here, 0.333333333 * 3 isn't quite 1 as it should.

A calculator (evaluating machine) will likely choke trying to evaluate (2^(74,207,281) − 1)/(2^(74,207,281) − 1) even though the answer is trivially just 1. There's no need to evaluate here when a mere rewrite would suffice.

And of course there's also the opposite case of equations so intractable to term rewriting that they can only be approximately answered through numerical methods.

like image 183
Eli Avatar answered Oct 05 '22 09:10

Eli


"Symbolic Computation" is the computation with symbolic expressions.

Examples for symbolic expressions:

  • a mathematic formula. for example an integral expression
  • a logic theorem
  • a plan situation

For the latter:

  • roads from a to b, b to d, c to e, e to f, b to f, ...
  • parcels p1 at a, p2 at d and p3 at f
  • a truck t1 at d
  • a goal

Now the task would be to generate a good plan which picks up all parcels and reaches the given goal.

  1. pick up parcel p2 at d
  2. move truck t1 from d to b
  3. move truck t1 from b to a
  4. pick up parcel p1 at a
  5. ...

In above examples symbols stand for places and for things (truck, parcel). Symbol expressions describe a situation, a plan generator will return a sequence of actions - again described as symbolic expressions.

like image 23
Rainer Joswig Avatar answered Oct 05 '22 08:10

Rainer Joswig