# is.increasing.on.y: Diagnosis an increasing two-variable function toward y In FuzzyNumbers.Ext.2: Apply Two Fuzzy Numbers on a Monotone Function

## Description

`is.increasing.on.y` tests for any fixed x from `x.bound`, if the introduced two-variable function f(x,y) is increasing toward y on the considered `y.bound` or not. In other words, `is.increasing.on.y` returns `TRUE` if the introduced function f(x,y) is increasing function of y on the considered `y.bound` (for any fixed x in `x.bound`); and it returns `FALSE` otherwise. The goal of introducing function `is.increasing.on.y` in package `FuzzyNumbers.Ext.2` is using in function `f2apply`.

## Usage

 `1` ```is.increasing.on.y(fun, x.bound = c(-1, 1), y.bound = c(-1, 1), step = 0.01) ```

## Arguments

 `fun` a two-variable R function `x.bound` a vector with two real ordered elements which determine a bound on x-axis for checking the monotonic `y.bound` a vector with two real ordered elements which determine a bound on y-axis for checking the monotonic `step` a positive real-valued number which determine the increment of the considered sequence for checking the monotonic of the considered function. The default of `step` is 0.01. Increasing `step` value can cause the decreasing the time of computation and also cause the decreasing the precision of the calculations.

## Value

`TRUE` for two-variable function f(x,y) which is increasing toward y on `y.bound` (for any fixed x from `x.bound`); and otherwise `FALSE`

`is.increasing`, `is.increasing.on.x`
 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24``` ```is.increasing.on.y(fun=function(x,y) 2*x+y, x.bound=c(0,2), y.bound=c(1,2), step=.2) f = function(x,y) 5*x+y^2 is.increasing.on.y(f, x.bound=c(0,2), y.bound=c(0,2)) is.increasing.on.y(f, x.bound=c(-2,2), y.bound=c(0,2)) is.increasing.on.y(f, x.bound=c(0,2), y.bound=c(-2,2)) H = function(x,y) pnorm(x)+y^2 is.increasing.on.x(H) is.increasing.on.y(H) is.increasing.on.y(H, x.bound=c(-3,3), y.bound=c(0,3)) ## The function is currently defined as function (fun, x.bound = c(-1, 1), y.bound = c(-1, 1), step = 0.01) { x = seq(x.bound, x.bound, by = step) for (i in 1:length(x)) { g = function(y) fun(x[i], y) if (is.increasing(g, y.bound, step) == FALSE) { return(FALSE) } } return(TRUE) } ```