KAlgebra käsiraamat

# KAlgebra käsiraamat

Aleix Pol `<aleixpol@gmail.com>`

Tõlge eesti keelde: Marek Laane
Versioon 0.11 (KDE
4.11) (2013-06-27)

Autoriõigus © 2007 Aleix Pol

Autoriõiguse märge

KAlgebra on rakendus, mis võib asendada su senist graafikalkulaatorit. Sel on arvulisi, loogilisi, sümbolilisi ja analüüsiomadusi, mis võimaldavad arvutada matemaatilisi avaldisi konsoolis ja lasta tulemusi kujutada graafiliselt nii tasapinnaliselt (2D) kui ka ruumiliselt (3D). KAlgebra juured on matemaatilises märkekeeles (MathML), kuid KAlgebra kasutamiseks ei ole MathML-i tundmine sugugi vajalik.

Peatükk 1. Sissejuhatus
Sissejuhatus

# Peatükk 1. Sissejuhatus

KAlgebral on arvukalt omadusi, mis lubavad kasutajal ette võtta kõikvõimalikke matemaatilisi tehteid ja neid graafiliselt kujutada. Algselt oli rakendus orienteeritud MathMl-i kasutamisele. Praegu aga võivad ka väheste matemaatiliste teadmistega inimesed selle abil lahendada nii lihtsamaid kui ka päris keerulisi probleeme.

Kasutada saab selliseid võimalusi:

- Konsool matemaatiliste funktsioonide kiireks ja lihtsaks hindamiseks

- Skriptimisvõimalused pikemateks arvutusteks

- Keelevõimalused, sealhulgas funktsiooni definitsiooni ja süntaksi automaatne lõpetamine

- Arvutusvõimalused, sealhulgas algebra, vektorarvutus ja loendite käsitlemine

- Funktsioonide joonistamine, sealhulgas mittelineaarsetele võrranditele ja muudele

- Ruumiliste graafide loomine 3D funktsioonide kuvamiseks

- Sisseehitatud operandide sõnaraamat paljude funktsioonide kohta kiire abi leidmiseks

Allpool on pilt KAlgebrast töös:

KAlgebra seanssi käivitades näeb üht akent mitmest kaardiga: Konsool, 2D graafik, 3D graafik ja Sõnaraamat. Kõigil kaartidel leiab sisestusvälja, kus saab sisestada funktsioone või arvutusi, ning kuvavälja, kus näeb tulemusi.

Kasutaja saab alati võtta midagi ette oma seansiga menüü Seanss käskude vahendusel:

Seanss → Uus (Ctrl+N)

  Avab uue KAlgebra akna.

Seanss → Täisekraanirežiim (Ctrl+Shift+F)

  Võimaldab lülitada KAlgebra akna täisekraanirežiimi. Samuti saab sellesse režiimi lülituda ja sellest väljuda nupu abil, mille leiab KAlgebra akna ülemisest parempoolsest osast.

Seanss → Välju (Ctrl+Q)

  Lõpetab rakenduse töö.

Peatükk 2. Süntaks
Süntaks

# Peatükk 2. Süntaks

KAlgebra kasutab kasutaja funktsioonide sisestamiseks intuitiivset algebralist süntaksi, mis sarnaneb enamikus tänapäeva graafikalkulaatorites kasutusel oleva süntaksiga. Allpool loetletakse tähtsaimad KAlgebras saadaolevad operandid. KAlgebra autor võttis süntaksi loomisel eeskuju programmidest Maxima ja maple, pidades silmas kasutajaid, kes võivad olla nendega juba tuttavad.

Kui kedagi peaks huvitama KAlgebra siseelu, siis kasutaja sisestatud avaldised teisendab taustaprogramm MathML-i. See tähendab, et KAlgebra sisemiste omaduste korralikuks mõistmiseks on vajalik vähemalt pinnapealnegi arusaam MathML-o toetatud võimalustest.

Nimekiri praegu kasutada olevatest tehetest:

- + - * / : liitmine, lahutamine, korrutamine ja jagamine.

- ^, **: astendamine, kasutada võib mõlemat viisi. Samuti võib kasutada Unicode ² märki. Astmemärkide abil saab ka juurida, näiteks nii: a**(1/b)a

- -> : lambda. Sellega saab määrata ühe või rohkem vabu muutujaid, mis on funktsioonis piiratud. Näiteks avaldises `length:=(x,y)->(x*x+y*y)^0.5` kasutatakse lambdaoperandi märkimaks, et x ja y on piiratud, kui kasutatakse funktsioon length.

- x=a..b : seda saab kasutada vajaduse korral määrata kindlaks vahemik (piiratud muutuja+ülemraja+alamraja). See tähendab, et x on vahemikud a kuni b.

- () : sellega saab määrata kõrgema prioriteedi.

- abc(parameetrid) : funktsioonid. Kui parser leiab funktsiooni, kontrollib ta, kas abc on operaator. Kui jah, siis nii seda käsitletaksegi, kui ei, siis võetakse seda kui kasutaja funktsiooni.

- := : definitsioon. Nii saab defineerida muutuja väärtuse. Saab teha selliseid asju nagu x:=3, x:=y, kus y on defineeritud või defineerimata, või ümbermõõt:=r->2*pi*r.

- ? : tükiti (piecewise) tingimuse definitsioon. Sel moel saab KAlgebras defineerida tingimuslikke tehteid. Või kui teisiti öelda, siis saab nii määrata if, elseif ja else tingimust. Kui lisame tingimuse '?' ette, kasutatakse seda tingimust ainult siis, kui see on tõene, kui leitakse '?' ilma tingimuseta, lisatakse see viimasena. Näide: kui on tõene kui a iga asukohas Näide: piecewise { x=0 ? 0, x=1 ? x+1, ? x**2 }

- { } : MathML konteiner. Nii saab defineerida konteineri. Peamiselt on sellest kasu tükiti tehete puhul.

- = > >= < <= : väärtuste võrdlejad vastavalt võrdse, suurema, suurema või võrdse, väiksema ning väiksema või võrdse jaoks

Võib tekkida küsimus, milleks peaks üldse MathML-i peale mõtlema? Vastus on lihtne: nii saab kasutada selliseid fuktsioone nagu cos(), sin() või muid trigonomeetrilisi funktsioone, sum() or product(). Pole vahet, mis tüüpi see on. Kasutada saab plus(), times() ja kõike muud, millel on oma operaator. Võimalikud on ka tõeväärtustega funktsioonid, nii et kasutada saab ka sellist asja nagu or(1,0,0,0,0).

Peatükk 3. Konsooli kasutamine
Konsooli kasutamine

# Peatükk 3. Konsooli kasutamine

KAlgebra konsool on tõeliselt võimas kalkulaator. Kasutaja saab avaldisi hindamiseks sisestada arvutamise või hindamise režiimis sõltuvalt sellest, milline režiim on valitud menüüs Konsool.

Hindamisrežiimis lihtsustab KAlgebra avaldist, isegi kui selles esineb defineerimata muutuja. Arvutamisrežiimis arvutab KAlgebra kõik välja ja kui leiab defineerimata muutuja, annab teada veast.

Lisaks kasutaja sisestatud võrrandite ja tulemuste kuvamisele konsoolis näeb paremal asuvas paneelis kõiki deklareeritud muutujaid. Topeltklõpsuga mõnele muutujale ilmub dialoog, kus saab muuta nende väärtust.

Muutuja "ans" on eriline: iga kord, kui see avaldisse sisestada, antakse sellele viimase tulemuse väärtus.

Järgnevalt mõned näitefunktsioonid, mida saab sisestada konsooliakna sisendiväljale:

- sin(pi)

- k:=33

- sum(k*x : x=0..10)

- f:=p->p*k

- f(pi)

Nüüd ka pilt konsooliaknast pärast ülal toodud näidisavaldiste sisestamist:

Kasutaja saab arvutuste jada täitmist juhtida menüü Konsool käskudega:

Konsool → Laadi skript (Ctrl+L)

  Käivitab järgemööda failis antud juhised. Sellest on abi, kui on vaja defineerida teeke või taastada varasemat tegevust.

Konsool → Salvesta skript (Ctrl+G)

  Salvestab juhised, mida oled alates seansi algusest sisestanud, et neid saaks uuesti kasutada. Loob tekstifailid, mida saab vajaduse korral hõlpsasti parandada suvalises tekstiredaktoris, näiteks Kates.

Konsool → Ekspordi logi (Ctrl+S)

  Salvestab logi koos kõigi tulemustega HTML-failina, mida saab trükkida või avaldada.

Peatükk 4. 2D graafikud
2D graafikud

# Peatükk 4. 2D graafikud

Uue 2D graafiku lisamiseks KAlgebras tuleb valida kaart 2D graafik ja klõpsata uue funktsiooni lisamiseks Lisa. Seejärel saab nähtavale ilmunud sisestuskasti kirjutada vajaliku funktsiooni.

## Süntaks

Kui soovid kasutada tüüpilist f(x) funktsiooni, ei ole seda tingimata vaja määrata, aga kui soovid f(y) või polaarfunktsiooni, peab lisama tõkestatud muutujatena y-> ja q->.

Näited:

- sin(x)

- x²

- y->sin(y)

- q->3*sin(7*q)

- t->vector{sin t, t**2}

Kui oled funktsiooni sisestanud, klõpsa OK ja näedki graafikut peaaknas.

Võimalused
Võimalused

## Võimalused

Samasse vaatesse saab paigutada mitu graafikut. Kasuta lihtsalt nuppu Lisa. Igale graafikule võib anda oma värvi.

Vaadet saab hiirega suurendada ja liigutada. Hiirerattaga saab suurendada ja vähendada. Samuti võib hiire vasaku nupuga valida piirkonnaga, mida siis näidatakse suurendatult. Vaadet saab liigutada nooleklahvidega.

### Märkus

2D graafide vaateava saab otseselt määrata kaardi 2D graaf alamkaardil Vaateava.

Kaardil Nimekiri saab avada kaardi Redigeerimine funktsiooni muutmiseks või eemaldamiseks topeltklõpsuga. Samuti saab seal lasta funktsiooni nime näidata või see peita, kui märkida kastike või eemaldada märge kastikesest funktsiooni nime ees.

Menüüs 2D graafik leiab järgmised valikud:

- Alusvõrgu näitamine või peitmine

- Proportsioonide säilitamine suurendamisel/vähendamisel

- Suurendamine (Ctrl++) ja vähendamine (Ctrl+-)

- Graafiku salvestamine pildina (Ctrl+S)

- Vaate algse suurenduse lähtestamine

- Graafiku eraldusvõime valimine

Allpool on näide kasutajast, kelle kursor asub paremas servas, otse funktsiooni sin(1/x) peal. Kasutaja on tarvitanud graafi loomisel väga suurt lahutust (ostsillatsioon toimub kõrgetel sagedustel allika lähedal). Kasutada saab ka reaalajas kursori võimalust, mis tähendab, et kui viid kursori mõne punkti peale, näed ekraani alumises vasakus nurgas X- ja Y-väärtusi. Reaalajas kursori asukohta on funktsioonile tõmmatud "puutuja".

Peatükk 5. 3D graafikud
3D graafikud

# Peatükk 5. 3D graafikud

3D graafiku loomiseks KAlgebras tuleb valida kaart 3D graafik, mille allosas on sisestusväli, kuhu saab kirjutada funktsiooni. Z ei ole veel defineeritav, praegu toetab KAlgebra ainult 3D graafikuid, mis sõltuvad ainult x-ist ja y-st, näiteks (x,y)->x*y, kus z=x*y.

Näited:

- (x,y)->sin(x)*sin(y)

- (x,y)->x/y

Vaadet saab hiirega suurendada ja vähendada ning liigutada. Hiirerattaga saab suurendada ja vähendada. Kui hoida all hiire parem nupp ja liigutada hiirt, saab graafikut pöörata.

Nool vasakule ja paremale pööravad graafikut Z-telje ümber, nool üles ja alla ümber vaate rõhttelje. Joonise suurendamiseks vajuta klahvi W ja vähendamiseks klahvi S.

Menüüs 3D graafik leiab järgmised valikud:

- Graafiku salvestamine pildina (Ctrl+S)

- Vaate algse suurenduse lähtestamine

- Graafiku esitamine punktide, joonte või ühtlasena

Allpool on niinimetatud sombreerofunktsiooni näide. Siinsel graafil on kasutatud ruumiliselt jooni.

Peatükk 6. Sõnaraamat
Sõnaraamat

# Peatükk 6. Sõnaraamat

Sõnaraamat sisaldab kõiki KAlgebras saadaolevaid funktsioone. Väga mõistlik on sõnaraamatus üle kontrollida, milleks mõnda tehet kasutada saab ja kui palju parameetreid funktsioonid vajavad. Samuti saab siin tõeliselt aimu, milleks on KAlgebra võimeline.

Allpool on näide KAlgebra sõnaraamatust, kus on otsitud teavet koosinuse kohta.

Peatükk 7. KAlgebra toetatud käsud
KAlgebra toetatud käsud

# Peatükk 7. KAlgebra toetatud käsud

## plus

- Nimi: plus

- Kirjeldus: liitmine

- Parameetrid: plus(... parameetrid, ...)

- Näide: x->x+2

times
times

## times

- Nimi: times

- Kirjeldus: korrutamine

- Parameetrid: times(... parameetrid, ...)

- Näide: x->x*2

minus
minus

## minus

- Nimi: minus

- Kirjeldus: lahutamine. Arvab kõik väärtused esimesest väärtusest maha.

- Parameetrid: minus(... parameetrid, ...)

- Näide: x->x-2

divide
divide

## divide

- Nimi: divide

- Kirjeldus: jagamine

- Parameetrid: divide(par1, par2)

- Näide: x->x/2

quotient
quotient

## quotient

- Nimi: quotient

- Kirjeldus: jagatis

- Parameetrid: quotient(par1, par2)

- Näide: x->quotient(x, 2)

power
power

## power

- Nimi: power

- Kirjeldus: astendamine

- Parameetrid: power(par1, par2)

- Näide: x->x^2

root
root

## root

- Nimi: root

- Kirjeldus: juurimine

- Parameetrid: root(par1, par2)

- Näide: x->root(x, 2)

factorial
factorial

## factorial

- Nimi: factorial

- Kirjeldus: faktoriaal. factorial(n)=n!

- Parameetrid: factorial(par1)

- Näide: x->factorial(x)

and
and

## and

- Nimi: and

- Kirjeldus: loogiline JA

- Parameetrid: and(... parameetrid, ...)

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

or
or

## or

- Nimi: or

- Kirjeldus: loogiline VÕI

- Parameetrid: or(... parameetrid, ...)

- Näide: x->piecewise { or(x>2, x>-2) ? 1, ? 0 }

xor
xor

## xor

- Nimi: xor

- Kirjeldus: loogiline välistav VÕI

- Parameetrid: xor(... parameetrid, ...)

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

not
not

## not

- Nimi: not

- Kirjeldus: loogiline EI

- Parameetrid: not(par1)

- Näide: x->piecewise { not(x>0) ? 1, ? 0 }

gcd
gcd

## gcd

- Nimi: gcd

- Kirjeldus: suurim ühistegur

- Parameetrid: gcd(... parameetrid, ...)

- Näide: x->gcd(x, 3)

lcm
lcm

## lcm

- Nimi: lcm

- Kirjeldus: vähim ühiskordne

- Parameetrid: lcm(... parameetrid, ...)

- Näide: x->lcm(x, 4)

rem
rem

## rem

- Nimi: rem

- Kirjeldus: jääk

- Parameetrid: rem(par1, par2)

- Näide: x->rem(x, 5)

factorof
factorof

## factorof

- Nimi: factorof

- Kirjeldus: tegur

- Parameetrid: factorof(par1, par2)

- Näide: x->factorof(x, 3)

max
max

## max

- Nimi: max

- Kirjeldus: maksimum

- Parameetrid: max(... parameetrid, ...)

- Näide: x->max(x, 4)

min
min

## min

- Nimi: min

- Kirjeldus: miinimum

- Parameetrid: min(... parameetrid, ...)

- Näide: x->min(x, 4)

lt
lt

## lt

- Nimi: lt

- Kirjeldus: väiksem kui. lt(a,b)=a<b

- Parameetrid: lt(par1, par2)

- Näide: x->piecewise { x<4 ? 1, ? 0 }

gt
gt

## gt

- Nimi: gt

- Kirjeldus: suurem kui. gt(a,b)=a>b

- Parameetrid: gt(par1, par2)

- Näide: x->piecewise { x>4 ? 1, ? 0 }

eq
eq

## eq

- Nimi: eq

- Kirjeldus: võrdub. eq(a,b) = a=b

- Parameetrid: eq(par1, par2)

- Näide: x->piecewise { x=4 ? 1, ? 0 }

neq
neq

## neq

- Nimi: neq

- Kirjeldus: ei võrdu. neq(a,b)=a≠b

- Parameetrid: neq(par1, par2)

- Näide: x->piecewise { x!=4 ? 1, ? 0 }

leq
leq

## leq

- Nimi: leq

- Kirjeldus: väiksem kui või võrdub. leq(a,b)=a≤b

- Parameetrid: leq(par1, par2)

- Näide: x->piecewise { x<=4 ? 1, ? 0 }

geq
geq

## geq

- Nimi: geq

- Kirjeldus: suurem kui või võrdub. geq(a,b)=a≥b

- Parameetrid: geq(par1, par2)

- Näide: x->piecewise { x>=4 ? 1, ? 0 }

implies
implies

## implies

- Nimi: implies

- Kirjeldus: loogiline implikatsioon

- Parameetrid: implies(par1, par2)

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

approx
approx

## approx

- Nimi: approx

- Kirjeldus: lähendus. approx(a)=a±n

- Parameetrid: approx(par1, par2)

- Näide: x->piecewise { approx(x, 4) ? 1, ? 0 }

abs
abs

## abs

- Nimi: abs

- Kirjeldus: absoluutväärtus. abs(n)=|n|

- Parameetrid: abs(par1)

- Näide: x->abs(x)

floor
floor

## floor

- Nimi: floor

- Kirjeldus: alumine piirväärtus. floor(n)=⌊n⌋

- Parameetrid: floor(par1)

- Näide: x->floor(x)

ceiling
ceiling

## ceiling

- Nimi: ceiling

- Kirjeldus: ülemine piirväärtus. ceil(n)=⌈n⌉

- Parameetrid: ceiling(par1)

- Näide: x->ceiling(x)

sin
sin

## sin

- Nimi: sin

- Kirjeldus: antud nurga siinuse arvutamise funktsioon

- Parameetrid: sin(par1)

- Näide: x->sin(x)

cos
cos

## cos

- Nimi: cos

- Kirjeldus: antud nurga koosinuse arvutamise funktsioon

- Parameetrid: cos(par1)

- Näide: x->cos(x)

tan
tan

## tan

- Nimi: tan

- Kirjeldus: antud nurga tangensi arvutamise funktsioon

- Parameetrid: tan(par1)

- Näide: x->tan(x)

sec
sec

## sec

- Nimi: sec

- Kirjeldus: seekans

- Parameetrid: sec(par1)

- Näide: x->sec(x)

csc
csc

## csc

- Nimi: csc

- Kirjeldus: koosekans

- Parameetrid: csc(par1)

- Näide: x->csc(x)

cot
cot

## cot

- Nimi: cot

- Kirjeldus: kootangens

- Parameetrid: cot(par1)

- Näide: x->cot(x)

sinh
sinh

## sinh

- Nimi: sinh

- Kirjeldus: hüperboolne siinus

- Parameetrid: sinh(par1)

- Näide: x->sinh(x)

cosh
cosh

## cosh

- Nimi: cosh

- Kirjeldus: hüperboolne koosinus

- Parameetrid: cosh(par1)

- Näide: x->cosh(x)

tanh
tanh

## tanh

- Nimi: tanh

- Kirjeldus: hüperboolne tangens

- Parameetrid: tanh(par1)

- Näide: x->tanh(x)

sech
sech

## sech

- Nimi: sech

- Kirjeldus: hüperboolne seekans

- Parameetrid: sech(par1)

- Näide: x->sech(x)

csch
csch

## csch

- Nimi: csch

- Kirjeldus: hüperboolne koosekans

- Parameetrid: csch(par1)

- Näide: x->csch(x)

coth
coth

## coth

- Nimi: coth

- Kirjeldus: hüperboolne kootangens

- Parameetrid: coth(par1)

- Näide: x->coth(x)

arcsin
arcsin

## arcsin

- Nimi: arcsin

- Kirjeldus: arkussiinus

- Parameetrid: arcsin(par1)

- Näide: x->arcsin(x)

arccos
arccos

## arccos

- Nimi: arccos

- Kirjeldus: arkuskoosinus

- Parameetrid: arccos(par1)

- Näide: x->arccos(x)

arctan
arctan

## arctan

- Nimi: arctan

- Kirjeldus: arkustangens

- Parameetrid: arctan(par1)

- Näide: x->arctan(x)

arccot
arccot

## arccot

- Nimi: arccot

- Kirjeldus: arkuskootangens

- Parameetrid: arccot(par1)

- Näide: x->arccot(x)

arccosh
arccosh

## arccosh

- Nimi: arccosh

- Kirjeldus: hüperboolne arkuskoosinus

- Parameetrid: arccosh(par1)

- Näide: x->arccosh(x)

arccsc
arccsc

## arccsc

- Nimi: arccsc

- Kirjeldus: arkuskoosekans

- Parameetrid: arccsc(par1)

- Näide: x->arccsc(x)

arccsch
arccsch

## arccsch

- Nimi: arccsch

- Kirjeldus: hüperboolne arkuskoosekans

- Parameetrid: arccsch(par1)

- Näide: x->arccsch(x)

arcsec
arcsec

## arcsec

- Nimi: arcsec

- Kirjeldus: arkusseekans

- Parameetrid: arcsec(par1)

- Näide: x->arcsec(x)

arcsech
arcsech

## arcsech

- Nimi: arcsech

- Kirjeldus: hüperboolne arkusseekans

- Parameetrid: arcsech(par1)

- Näide: x->arcsech(x)

arcsinh
arcsinh

## arcsinh

- Nimi: arcsinh

- Kirjeldus: hüperboolne arkussiinus

- Parameetrid: arcsinh(par1)

- Näide: x->arcsinh(x)

arctanh
arctanh

## arctanh

- Nimi: arctanh

- Kirjeldus: hüperboolne arkustangens

- Parameetrid: arctanh(par1)

- Näide: x->arctanh(x)

exp
exp

## exp

- Nimi: exp

- Kirjeldus: astendaja (e^x)

- Parameetrid: exp(par1)

- Näide: x->exp(x)

ln
ln

## ln

- Nimi: ln

- Kirjeldus: naturaallogaritm

- Parameetrid: ln(par1)

- Näide: x->ln(x)

log
log

## log

- Nimi: log

- Kirjeldus: kümnendlogaritm

- Parameetrid: log(par1)

- Näide: x->log(x)

sum
sum

## sum

- Nimi: sum

- Kirjeldus: summa

- Parameetrid: sum(par1 : muutuja=alates..kuni)

- Näide: x->x*sum(t*t:t=0..3)

product
product

## product

- Nimi: product

- Kirjeldus: korrutis

- Parameetrid: product(par1 : muutuja=alates..kuni)

- Näide: x->product(t+t:t=1..3)

diff
diff

## diff

- Nimi: diff

- Kirjeldus: diferents

- Parameetrid: diff(par1 : muutuja)

- Näide: x->(diff(x^2:x))(x)

card
card

## card

- Nimi: card

- Kirjeldus: kardinaalarv

- Parameetrid: card(par1)

- Näide: x->card(vector { x, 1, 2 })

scalarproduct
scalarproduct

## scalarproduct

- Nimi: scalarproduct

- Kirjeldus: skalaarkorrutis

- Parameetrid: scalarproduct(... parameetrid, ...)

- Näide: x->scalarproduct(vector { 0, x }, vector { x, 0 })[1]

selector
selector

## selector

- Nimi: selector

- Kirjeldus: par1-nda elemendi valimine par2 loendist või vektorist

- Parameetrid: selector(par1, par2)

- Näide: x->scalarproduct(vector { 0, x }, vector { x, 0 })[1]

union
union

## union

- Nimi: union

- Kirjeldus: mitme samatüübiline elemendi ühendamine

- Parameetrid: union(... parameetrid, ...)

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

forall
forall

## forall

- Nimi: forall

- Kirjeldus: kõigi kohta

- Parameetrid: forall(par1 : muutuja)

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

exists
exists

## exists

- Nimi: exists

- Kirjeldus: on olemas

- Parameetrid: exists(par1 : muutuja)

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

map
map

## map

- Nimi: map

- Kirjeldus: funktsiooni rakendamine loendi kõigile elementidele

- Parameetrid: map(par1, par2)

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

filter
filter

## filter

- Nimi: filter

- Kirjeldus: kõigi elementide eemaldamine, mis ei vasta tingimusele

- Parameetrid: filter(par1, par2)

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

transpose
transpose

## transpose

- Nimi: transpose

- Kirjeldus: transponeerimine

- Parameetrid: transpose(par1)

- Näide: x->transpose(matrix { matrixrow { 1, 2, 3, 4, 5, 6 } })[rem(floor(x), 5)+3][1]

Peatükk 8. Autorid ja litsents
Autorid ja litsents

# Peatükk 8. Autorid ja litsents

- Rakenduse autoriõigus 2005-2009: Aleix Pol

Dokumentatsiooni autoriõigus 2007: Aleix Pol `(aleixpol AT gmail.com)`

Tõlge eesti keelde: Marek Laane `(bald AT smail.ee)`

Käesolev dokumentatsioon on litsenseeritud vastavalt GNU Vaba Dokumentatsiooni Litsentsi tingimustele.

Käesolev programm on litsenseeritud vastavalt GNU Üldise Avaliku Litsentsi tingimustele.

Lisa A. Paigaldamine
Paigaldamine

# Lisa A. Paigaldamine

## KAlgebra hankimine

KAlgebra on osa KDE projektist http://www.kde.org/.

KAlgebra asub paketis kdeedu KDE projekti peamises FTP saidis ftp://ftp.kde.org/pub/kde/.

Kompileerimine ja paigaldamine
Kompileerimine ja paigaldamine

## Kompileerimine ja paigaldamine

Et KAlgebra oma süsteemis kompileerida ja paigaldada, anna KAlgebra baaskataloogis järgmised käsud:

    % ./configure
    % make
    % make install

Kuna KAlgebra kasutab autoconf'i ja automake'i, ei tohiks kompileerimisel probleeme esineda. Kui neid siiski ette tuleb, anna sellest palun teada KDE meililistides.