# Arithmetic Ops Group Methods for sprays

### Description

Allows arithmetic operators to be used for spray calculations, such as addition, multiplication, division, integer powers, etc. Objects of class spray are interpreted as sparse multivariate polynomials.

### Usage

1 2 3 4 5 6 7 8 9 | ```
## S3 method for class 'spray'
Ops(e1, e2 = NULL)
spray_negative(S)
spray_times_spray(S1,S2)
spray_times_scalar(S,x)
spray_plus_spray(S1,S2)
spray_plus_scalar(S,x)
spray_power_scalar(S,n)
spray_eq_spray(S1,S2)
``` |

### Arguments

`e1,e2,S,S1,S2` |
Objects of class spray, here interpreted as sparse multivariate polynomials |

`x` |
Real valued scalar |

`n` |
Non-negative integer |

### Details

The function `Ops.spray()`

passes unary and binary arithmetic
operators (“`+`

”, “`-`

”, “`*`

”,
“`/`

”,“`==`

”, and “`^`

”) to the
appropriate specialist function.

The most interesting operators are “`*`

” and
“`+`

” which execute multivariate polynomial multiplication
and addition respectively.

Testing for equality uses `spray_eq_spray()`

. Note that
`spray_eq_spray(S1,S2)`

is algebraically equivalent to
`is.zero(S1-S2)`

, but faster (`FALSE`

is returned as soon as
a mismatch is found).

### Value

The functions all return spray objects except “`==`

”, which
returns a logical.

### Note

Notes here

### Author(s)

Robin K. S. Hankin

### See Also

`ooom`

### Examples

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |