# Search Space

The following are built-in operators which constitute the search space:

• +: The output of the computation $$x_j$$ is the sum over its inputs $$x_i, x_{ii}$$: $$x_j = x_i + x_{ii}$$.
• -: The output of the computation $$x_j$$ is the respective difference between its inputs $$x_i, x_{ii}$$: $$x_j = x_i - x_{ii}$$.
• *: The output of the computation $$x_j$$ is the product over its two inputs $$x_i, x_{ii}$$: $$x_j = x_i * x_{ii}$$.
• exp: The output of the computation $$x_j$$ is the natural exponential function applied to its input $$x_i$$: $$x_j = \exp(x_i)$$.
• pow2: The output of the computation $$x_j$$ is the square function applied to its input $$x_i$$: $$x_j$$ = $$x_i^2$$.
• pow3: The output of the computation $$x_j$$ is the cube function applied to its input $$x_i$$: $$x_j$$ = $$x_i^3$$.
• sin: The output of the computation $$x_j$$ is the sine function applied to its input $$x_i$$: $$x_j = \sin(x_i)$$.
• cos: The output of the computation $$x_j$$ is the cosine function applied to its input $$x_i$$: $$x_j = \cos(x_i)$$.
• ln: The output of the computation $$x_j$$ is the linear transformation applied to its input $$x_i$$: $$x_j = a * x_i + b$$, where $$a$$ and $$b$$ are slope and intercept parameters.

In BSR, a new operator can be added in two steps. First, define an operator as a function, as demonstrated in operations.py. Second, add the name of the operator and its prior information to the dictionaries in __get_prior() within prior.py.