General

Imagine working directly with sets, vectors, matrices, polynomials, groups, networks (graphs), and other mathematical objects. Elements™ Engineering-Scientific Workspace is software with a matrix language. It allows you to formulate and solve sophisticated problems using powerful algebraic structures. Consequently, your programs are short, error free, and easily modified. You will save time and money.

You can add, subtract, and multiply matrices in algebraic expressions of any length. Elements has hundreds of built-in functions such as Solution(), Determinant(), and Eigenvectors(). You can mix data types and functions, as in verifying the Cayley-Hamilton Theorem: A square matrix is a zero of its own characteristic polynomial.

NewMatrix M[3][3] =(
            2  3  1,
            3  1  2,
            5  4  2 );
p = CharacteristicPolynomial(M);
p;
-7.00000000x^0 - 14.00000000x^1 - 5.00000000x^2 + 1.00000000x^3
// Evaluate the polynomial with matrix as indeterminate;
p(M);
     0                       0                       0
     0                       0                       0
     0                       0                       0

Elements offers not only an alternative to laborious error-prone calculations but also a unified theoretical approach to many problems. Most technical problems use mathematical objects as prototype models. These include finite sets, groups, number systems, networks, vector spaces, polynomials, tensors, and discrete functions. Each has a matrix representation that Elements can implement. The resulting capabilities are both surprising and rewarding. You can concentrate on model building without being bogged down by computer details.

Elements is an excellent educational aid for students. They can quickly gain confidence while working with powerful structured aggregates. Through matrices, they can discern the commonality and essential distinction between various classes of mathematical objects.

A few of the more exciting capabilities are:

  • Elements is programmed to "know" mathematical relationships, even between different classes of objects.
  • Elements has the power of APL but provides more built-in functions and does not require special characters or keyboards.
  • Statistics and optimization problems can be formulated as over-determined and under-determined matrix equations respectively.
  • Operations on rational fraction valued objects. Thus it is possible to retain exact internal representation of numbers like 1/3 and 1/10.
  • Automatic generation of complex valued objects based on the context of an expression and without requiring you to anticipate or make special provisions for complex results. An expression with a complex exponent returns the principal value--a built-in capability not provided by most computer languages.
  • Hypermatrices whose elements are other mathematical aggregates: vectors, matrices, polynomials, etc.
  • Number theory functions: PrimeDecomposition(), PrimeGT(), Gcd(), Totient(), etc.
  • Continued fractions and convergents. Converging rational fraction approximations of a real number.
  • There is no syntactic distinction between continuous and discrete (table of values) functions. Both can be arguments to the Zeros(), Derivative(), and Integral() built-in functions.
  • Function plotting can be restricted to a range. Optional polar coordinates. Elements has a gallery of plot types.

xy plot

  • Picard's solution of a differential equation by iterative polynomial operations.
  • Arbitrarily high precision numbers using polynomial representation of numbers.
  • Missing value is implemented and recognized by all statistics built-in functions.
  • Actual floating-point computations can be turned off while accumulating an estimate of flops count required to solve a problem.
  • Conversion factors between common units of measure.
  • Elements traps and identifies errors, and suggests corrective actions.

Elements has a complete set of manuals.

Elements' history began in 1982. It has been in production on IBM mainframes, Unix machines, and PCs. Users have given it a demanding test.