# SAS® IML (SAS® Viya®) Features

## High-level programming language

• Translate mathematical formulas into programs.
• Matrices and vectors area treated as high-level objects.
• Data structures such as lists and in-memory tables.
• Iterative loops, IF-THEN/ELSE logic, etc.
• More than 300 built-in functions.
• Define new functions and subroutines.
• In the iml action: Functions can execute in parallel on multiple threads.

## Matrix computations

• Read from a data table into a matrix.
• Solve linear systems.
• Matrix decompositions: Cholesky, eigenvalues, SVD, etc.
• Send matrices to functions.

## Numerical analysis

• Linear algebra.
• Root-finding algorithms.
• Integrals and derivatives.
• Differential equations (DEs).
• Interpolation.
• In the iml action: Find multiple roots, solve multiple DEs, in parallel.
• Differential equation solver with a simple UI lets more people use algorithms without being an expert.

## Optimization

• Linear programming.
• Mixed-integer linear programming.

## Simulation

• Simulate from dozens of built-in distributions.
• Univariate: Normal, lognormal, exponential, etc.
• Multivariate: Normal, multinomial, Wishart, etc.
• Time series models: ARIMA and multivariate variations.
• Program custom simulations.
• Regression models.
• Spatial models.
• In the iml action: Generate independent samples in multiple threads.

## Statistics & data analysis

• Means and standard deviations.
• Correlation and covariance matrices.
• Tabulate categorical data.
• Implement hypothesis tests.
• Multivariate data analysis.
• In the iml action: bootstrap methods and permutation tests in parallel.