[ << ] [ < ] [ Up ] [ > ] [ >> ] [Top] [Contents] [Index] [ ? ]

## 3.3 Types of indeterminates

An algebraic object is recognized as an indeterminate when it can be a (so-called) variable in polynomials. An ordinary indeterminate is usually denoted by a string that start with a small alphabetical letter followed by an arbitrary number of alphabetical letters, digits or ‘_’. In addition to such ordinary indeterminates, there are other kinds of indeterminates in a wider sense in Asir. Such indeterminates in the wider sense have type polynomial, and further are classified into sub-types of the type indeterminate.

`0`

ordinary indeterminate
An object of this sub-type is denoted by a string that start with a small alphabetical letter followed by an arbitrary number of alphabetical letters, digits or ‘_’. This kind of indeterminates are most commonly used for variables of polynomials.

``` [vtype(a),vtype(aA_12)];
[0,0]
```
`1`

undetermined coefficient
The function `uc()` creates an indeterminate which is denoted by a string that begins with ‘_’. Such an indeterminate cannot be directly input by its name. Other properties are the same as those of ordinary indeterminate. Therefore, it has a property that it cannot cause collision with the name of ordinary indeterminates input by the user. And this property is conveniently used to create undetermined coefficients dynamically by programs.

``` U=uc();
_0
 vtype(U);
1
```
`2`

function form
A function call to a built-in function or to an user defined function is usually evaluated by Asir and retained in a proper internal form. Some expressions, however, will remain in the same form after evaluation. For example, `sin(x)` and `cos(x+1)` will remain as if they were not evaluated. These (unevaluated) forms are called ‘function forms’ and are treated as if they are indeterminates in a wider sense. Also, special forms such as `@pi` the ratio of circumference and diameter, and `@e` Napier’s number, will be treated as ‘function forms.’

``` V=sin(x);
sin(x)
 vtype(V);
2
 vars(V^2+V+1);
[sin(x)]
```
`3`

functor
A function call (or a function form) has a form fname(args). Here, fname alone is called a functor. There are several kinds of functors: built-in functor, user defined functor and functor for the elementary functions. A functor alone is treated as an indeterminate in a wider sense.

``` vtype(sin);
3
```

 [ << ] [ < ] [ Up ] [ > ] [ >> ]

This document was generated on September 27, 2023 using texi2html 5.0.