# Documentation

### This is machine translation

Translated by
Mouse over text to see original. Click the button below to return to the English verison of the page.

# Dom::Expression

Domain of all objects of basic type

MuPAD® notebooks are not recommended. Use MATLAB® live scripts instead.

MATLAB live scripts support most MuPAD functionality, though there are some differences. For more information, see Convert MuPAD Notebooks to MATLAB Live Scripts.

## Syntax

```Dom::Expression(`x`)
```

## Description

`Dom::Expression` comprises all objects only consisting of operands of built-in types.

`Dom::Expression` is a façade domain: it has no domain elements, but uses system representation.

Unlike `Dom::ExpressionField`, `Dom::Expression` does not belong to any arithmetical category, and its elements need not be arithmetical expressions.

`Dom::Expression` mainly serves as a super-domain to `Dom::ArithmeticalExpression`; it rarely makes sense to use it directly.

## Superdomain

`Dom::BaseDomain`

## Axioms

`Ax::systemRep`, `Ax::efficientOperation``("_divide")`, `Ax::efficientOperation``("_mult")`, `Ax::efficientOperation``("_invert")`

## Categories

`Cat::BaseCategory`

## Examples

### Example 1

Almost every MuPAD® object can be converted to an expression. Objects of basic type are expressions.

`Dom::Expression([3, array(1..2), rectform(exp(I))])`
``` ```

The `convert` method flattens its argument: hence expression sequences are not allowed.

`Dom::Expression((3, x))`
```Error: The number of arguments is incorrect. [expr] Evaluating: Dom::Expression::new ```

## Parameters

 `x` An object of basic type consisting only of operands of built-in types, or any other object convertible to such using `expr`.

## Entries

 "randomIdent" an identifier used for creating random elements

## Methods

expand all

#### Conversion Methods

`convert(x)`

`convert_to(x, T)`

`expr(x)`

`testtype(x, Dom::Expression)`

This method overloads `testtype`; since `Dom::Expression` has no domain elements, the overloading can only be caused by the second argument.

`float(x)`

#### Technical Methods

`subs(x, s, …)`

`subsex(x, s, …)`

`random()`