# Kommandon som stöds av Kalgebra

## plus

- Namn: plus

- Beskrivning: Addition

- Parametrar: plus(... parametrar, ...)

- Exempel: x->x+2

## times

- Namn: times

- Beskrivning: Multiplikation

- Parametrar: times(... parametrar, ...)

- Exempel: x->x*2

## minus

- Namn: minus

- Beskrivning: Subtraktion. Tar bort alla värden från det första.

- Parametrar: minus(... parametrar, ...)

- Exempel: x->x-2

## divide

- Namn: divide

- Beskrivning: Division

- Parametrar: divide(par1, par2)

- Exempel: x->x/2

## quotient

- Namn: quotient

- Beskrivning: Kvot

- Parametrar: quotient(par1, par2)

- Exempel: x->quotient(x, 2)

## power

- Namn: power

- Beskrivning: Upphöjt till

- Parametrar: power(par1, par2)

- Exempel: x->x^2

## root

- Namn: root

- Beskrivning: Rot

- Parametrar: root(par1, par2)

- Exempel: x->root(x, 2)

## factorial

- Namn: factorial

- Beskrivning: Fakultet. factorial(n)=n!

- Parametrar: factorial(par1)

- Exempel: x->factorial(x)

## and

- Namn: and

- Beskrivning: Booleskt och

- Parametrar: and(... parametrar, ...)

- Exempel: x->piecewise { and(x>-2, x<2) ? 1, ? 0 }

## or

- Namn: or

- Beskrivning: Booleskt eller

- Parametrar: or(... parametrar, ...)

- Exempel: x->piecewise { or(x>2, x>-2) ? 1, ? 0 }

## xor

- Namn: xor

- Beskrivning: Booleskt exklusivt eller

- Parametrar: xor(... parametrar, ...)

- Exempel: x->piecewise { xor(x>0, x<3) ? 1, ? 0 }

## not

- Namn: not

- Beskrivning: Booleskt icke

- Parametrar: not(par1)

- Exempel: x->piecewise { not(x>0) ? 1, ? 0 }

## gcd

- Namn: gcd

- Beskrivning: Största gemensamma delare

- Parametrar: gcd(... parametrar, ...)

- Exempel: x->gcd(x, 3)

## lcm

- Namn: lcm

- Beskrivning: Minsta gemensamma multipel

- Parametrar: lcm(... parametrar, ...)

- Exempel: x->lcm(x, 4)

## rem

- Namn: rem

- Beskrivning: Rest

- Parametrar: rem(par1, par2)

- Exempel: x->rem(x, 5)

## factorof

- Namn: factorof

- Beskrivning: Faktorn av

- Parametrar: factorof(par1, par2)

- Exempel: x->factorof(x, 3)

## max

- Namn: max

- Beskrivning: Maximum

- Parametrar: max(... parametrar, ...)

- Exempel: x->max(x, 4)

## min

- Namn: min

- Beskrivning: Minimum

- Parametrar: min(... parametrar, ...)

- Exempel: x->min(x, 4)

## lt

- Namn: lt

- Beskrivning: Mindre än. lt(a,b)=a<b

- Parametrar: lt(par1, par2)

- Exempel: x->piecewise { x<4 ? 1, ? 0 }

## gt

- Namn: gt

- Beskrivning: Större än. gt(a,b)=a>b

- Parametrar: gt(par1, par2)

- Exempel: x->piecewise { x>4 ? 1, ? 0 }

## eq

- Namn: eq

- Beskrivning: Lika med. eq(a,b) = a=b

- Parametrar: eq(par1, par2)

- Exempel: x->piecewise { x=4 ? 1, ? 0 }

## neq

- Namn: neq

- Beskrivning: Inte lika med. neq(a,b)=a≠b

- Parametrar: neq(par1, par2)

- Exempel: x->piecewise { x!=4 ? 1, ? 0 }

## leq

- Namn: leq

- Beskrivning: Mindre än eller lika med. leq(a,b)=a≤b

- Parametrar: leq(par1, par2)

- Exempel: x->piecewise { x<=4 ? 1, ? 0 }

## geq

- Namn: geq

- Beskrivning: Större än eller lika med. geq(a,b)=a≥b

- Parametrar: geq(par1, par2)

- Exempel: x->piecewise { x>=4 ? 1, ? 0 }

## implies

- Namn: implies

- Beskrivning: Boolesk implikation

- Parametrar: implies(par1, par2)

- Exempel: x->piecewise { implies(x<0, x<3) ? 1, ? 0 }

## approx

- Namn: approx

- Beskrivning: Approximation. approx(a)=a±n

- Parametrar: approx(par1, par2)

- Exempel: x->piecewise { approx(x, 4) ? 1, ? 0 }

## abs

- Namn: abs

- Beskrivning: Absolutvärde. abs(n)=|n|

- Parametrar: abs(par1)

- Exempel: x->abs(x)

## floor

- Namn: floor

- Beskrivning: Golvfunktionens värde. floor(n)=⌊n⌋

- Parametrar: floor(par1)

- Exempel: x->floor(x)

## ceiling

- Namn: ceiling

- Beskrivning: Takfunktionens värde. ceil(n)=⌈n⌉

- Parametrar: ceiling(par1)

- Exempel: x->ceiling(x)

## sin

- Namn: sin

- Beskrivning: Funktion för att beräkna sinus för en given vinkel

- Parametrar: sin(par1)

- Exempel: x->sin(x)

## cos

- Namn: cos

- Beskrivning: Funktion för att beräkna cosinus för en given vinkel

- Parametrar: cos(par1)

- Exempel: x->cos(x)

## tan

- Namn: tan

- Beskrivning: Funktion för att beräkna tangens för en given vinkel

- Parametrar: tan(par1)

- Exempel: x->tan(x)

## sec

- Namn: sec

- Beskrivning: Sekant

- Parametrar: sec(par1)

- Exempel: x->sec(x)

## csc

- Namn: csc

- Description: Cosekant

- Parametrar: csc(par1)

- Exempel: x->csc(x)

## cot

- Namn: cot

- Beskrivning: Cotangens

- Parametrar: cot(par1)

- Exempel: x->cot(x)

## sinh

- Namn: sinh

- Beskrivning: Hyperbolisk sinus

- Parametrar: sinh(par1)

- Exempel: x->sinh(x)

## cosh

- Namn: cosh

- Beskrivning: Hyperbolisk cosinus

- Parametrar: cosh(par1)

- Exempel: x->cosh(x)

## tanh

- Namn: tanh

- Beskrivning: Hyperbolisk tangens

- Parametrar: tanh(par1)

- Exempel: x->tanh(x)

## sech

- Namn: sech

- Beskrivning: Hyperbolisk sekant

- Parametrar: sech(par1)

- Exempel: x->sech(x)

## csch

- Namn: csch

- Beskrivning: Hyperbolisk cosekant

- Parametrar: csch(par1)

- Exempel: x->csch(x)

## coth

- Namn: coth

- Beskrivning: Hyperbolisk cotangens

- Parametrar: coth(par1)

- Exempel: x->coth(x)

## arcsin

- Namn: arcsin

- Beskrivning: Arcus sinus

- Parametrar: arcsin(par1)

- Exempel: x->arcsin(x)

## arccos

- Namn: arccos

- Beskrivning: Arcus cosinus

- Parametrar: arccos(par1)

- Exempel: x->arccos(x)

## arctan

- Namn: arctan

- Beskrivning: Arcus tangens

- Parametrar: arctan(par1)

- Exempel: x->arctan(x)

## arccot

- Namn: arccot

- Beskrivning: Arcus cotangens

- Parametrar: arccot(par1)

- Exempel: x->arccot(x)

## arccosh

- Namn: arccosh

- Beskrivning: Hyperbolisk arcus cosinus

- Parametrar: arccosh(par1)

- Exempel: x->arccosh(x)

## arccsc

- Namn: arccsc

- Description: Arcus cosekant

- Parametrar: arccsc(par1)

- Exempel: x->arccsc(x)

## arccsch

- Namn: arccsch

- Beskrivning: Hyperbolisk arcus cosekant

- Parametrar: arccsch(par1)

- Exempel: x->arccsch(x)

## arcsec

- Namn: arcsec

- Beskrivning: Arcus sekant

- Parametrar: arcsec(par1)

- Exempel: x->arcsec(x)

## arcsech

- Namn: arcsech

- Beskrivning: Hyperbolisk arcus sekant

- Parametrar: arcsech(par1)

- Exempel: x->arcsech(x)

## arcsinh

- Namn: arcsinh

- Beskrivning: Hyperbolisk arcus sinus

- Parametrar: arcsinh(par1)

- Exempel: x->arcsinh(x)

## arctanh

- Namn: arctanh

- Beskrivning: Hyperbolisk arcus tangens

- Parametrar: arctanh(par1)

- Exempel: x->arctanh(x)

## exp

- Namn: exp

- Beskrivning: Exponent (e^x)

- Parametrar: exp(par1)

- Exempel: x->exp(x)

## ln

- Namn: ln

- Beskrivning: Bas-e logaritm

- Parametrar: ln(par1)

- Exempel: x->ln(x)

## log

- Namn: log

- Beskrivning: Bas-10 logaritm

- Parametrar: log(par1)

- Exempel: x->log(x)

## sum

- Namn: sum

- Beskrivning: Summering

- Parametrar: sum(par1 : var=från..till)

- Exempel: x->x*sum(t*t:t=0..3)

## product

- Namn: product

- Beskrivning: Produkt

- Parametrar: product(par1 : var=från..till)

- Exempel: x->product(t+t:t=1..3)

## diff

- Namn: diff

- Beskrivning: Derivata

- Parametrar: diff(par1 : var)

- Exempel: x->(diff(x^2:x))(x)

## card

- Namn: card

- Beskrivning: Kardinaltal

- Parametrar: card(par1)

- Exempel: x->card(vector { x, 1, 2 })

## scalarproduct

- Namn: scalarproduct

- Beskrivning: Skalärprodukt

- Parametrar: scalarproduct(... parametrar, ...)

- Exempel: x->scalarproduct(vector { 0, x }, vector { x, 0 })[1]

## selector

- Namn: selector

- Beskrivning: Välj element nummer par1 från listan eller vektorn par2

- Parametrar: selector(par1, par2)

- Exempel: x->scalarproduct(vector { 0, x }, vector { x, 0 })[1]

## union

- Namn: union

- Beskrivning: Sammanfogar flera objekt av samma typ

- Parametrar: union(... parametrar, ...)

- Exempel: x->union(list { 1, 2, 3 }, list { 4, 5, 6 })[rem(floor(x), 5)+3]

## forall

- Namn: forall

- Beskrivning: För alla

- Parametrar: forall(par1 : var)

- Exempel: x->piecewise { forall(t:t@list { true, false, false }) ? 1, ? 0 }

## exists

- Namn: exists

- Beskrivning: Finns

- Parametrar: exists(par1 : var)

- Exempel: x->piecewise { exists(t:t@list { true, false, false }) ? 1, ? 0 }

## map

- Namn: map

- Beskrivning: Utför en funktion för varje element i en lista

- Parametrar: map(par1, par2)

- Exempel: x->map(x->x+x, list { 1, 2, 3, 4, 5, 6 })[rem(floor(x), 5)+3]

## filter

- Namn: filter

- Beskrivning: Tar bort alla element som inte stämmer med ett villkor

- Parametrar: filter(par1, par2)

- Exempel: x->filter(u->rem(u, 2)=0, list { 2, 4, 3, 4, 8, 6 })[rem(floor(x), 5)+3]