# Math.FusedMultiplyAdd(Double, Double, Double) Method

## Definition

Returns (x * y) + z, rounded as one ternary operation.

```
public:
static double FusedMultiplyAdd(double x, double y, double z);
```

`public static double FusedMultiplyAdd (double x, double y, double z);`

`static member FusedMultiplyAdd : double * double * double -> double`

`Public Shared Function FusedMultiplyAdd (x As Double, y As Double, z As Double) As Double`

#### Parameters

- x
- Double

The number to be multiplied with `y`

.

- y
- Double

The number to be multiplied with `x`

.

- z
- Double

The number to be added to the result of `x`

multiplied by `y`

.

#### Returns

(x * y) + z, rounded as one ternary operation.

## Remarks

This computes `(x * y)`

as if to infinite precision, adds `z`

to that result as if to infinite precision, and finally rounds to the nearest representable value.

This differs from the non-fused sequence which would compute `(x * y)`

as if to infinite precision, round the result to the nearest representable value, add `z`

to the rounded result as if to infinite precision, and finally round to the nearest representable value.