# GGP's elementary Operators/Functions

GGP 'knows' elementary functions/operators with one and two (or more) arguments. Each of them has the syntax xxx(a) or xxx(a,a), where xxx is the function/operator, and a, b are the arguments. The arguments can be strings containing other elementary functions/operators, explicit constants (standard Fortran syntax: -1.2, 3, 3.56E-12, etc.), implicit constants (c0,c1,c2,c3), parameter (p0), variable (x0). Note, that the actual GGP version works with four implicit constants, one parameter and one variable only. The index 0 of the parameter or variable can be omitted. GGP constructs formula for the basis functions by nesting of elementary functions/operators. For example, sin(p*x-1.23*c0) is in GGP notation sin(sub(mul(p0,x0),mul(1.23,c0))), or sin(add(mul(p0,x0),mul(-1.23,c0))), or ....

For constructing full binary trees, only operators with two arguments may be applied!

If you want to visualize a function consisting of these elementary functions/operators, you can select Series and Formula from the Options menu. In the section User's formula, you can enter your function string, the interval xmin...xmax, the number of points within this interval, where you want to compute the function, and the value of the parameter p0. When you press the OK, compute now button, a menu appears from which you should select User's Formula. Since your new function will overwrite the actual (predefined) function, an alert box will notify this and ask whether you would like to save the actual function first on a file. As soon as your function has been computed, you can visualize it by selecting Draw function from the Actions menu, or by clicking the pencil button in the GGP Actions box. Note that these two alternatives behave differently!

### Functions/operators with one argument (incomplete list)

neg(a):=-a
inv(a):=1/a
sqr(a):=a*a
srt(a):=square root of a
log(a):=ln(a):=natural logarithm of a
exp(a):=e**a:=e^a
sin(a):=sinus of a
cos(a):=cosinus of a
int(a):=nearest integer value of a
abs(a):=srt(sqr(a))
sig(a):=1 if a>=0, -1 if a<0

### Functions/operators with two arguments (incomplete list)

sub(a,b):=a-b
mul(a,b):=a*b
div(a,b):=a/b
lga(a,b):=ln(b)/ln(a):=logarithm of a with basis b
pow(a,b):=a**b:=a^b
sim(a,b):=sin(a*b)
com(a,b):=cos(a*b)
ta1(a,b):=a
ta2(a,b):=b
rnd(a,b):=random value in the interval a...b

Back to the Index