% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/bru_is.R
\name{bru_is_linear}
\alias{bru_is_linear}
\alias{bru_is_linear.bru}
\alias{bru_is_linear.bru_info}
\alias{bru_is_linear.bru_model}
\alias{bru_is_linear.bru_obs}
\alias{bru_is_linear.bru_obs_list}
\alias{bru_is_linear.bru_pred_expr}
\alias{bru_is_linear.bru_comp_list}
\alias{bru_is_linear.bru_comp}
\alias{bru_is_linear.bru_mapper}
\title{Check for predictor linearity}
\usage{
bru_is_linear(x, ...)

\method{bru_is_linear}{bru}(x, ...)

\method{bru_is_linear}{bru_info}(x, ...)

\method{bru_is_linear}{bru_model}(x, ...)

\method{bru_is_linear}{bru_obs}(x, ...)

\method{bru_is_linear}{bru_obs_list}(x, ...)

\method{bru_is_linear}{bru_pred_expr}(x, ...)

\method{bru_is_linear}{bru_comp_list}(x, ...)

\method{bru_is_linear}{bru_comp}(x, ...)

\method{bru_is_linear}{bru_mapper}(x, ...)
}
\arguments{
\item{x}{A object containing a predictor definition}

\item{\dots}{Arguments passed on recursively.}
}
\value{
\code{TRUE} if the expression is detected to be linear, \code{FALSE}
otherwise.
}
\description{
Checks if a predictor expression is linear (or affine)
}
\examples{
bru_is_linear(new_bru_pred_expr(~ x + y))
bru_is_linear(new_bru_pred_expr(~ x * y))
bru_is_linear(bm_scale())
bru_is_linear(bm_logsumexp())

}
