Aritás
A logika, matematika és számítástudomány területén az aritás (arity) egy függvény vagy matematikai művelet esetén az elfogadott argumentumok vagy operandusok számát határozza meg. Egy reláció vagy predikátum aritásán a megfelelő Descartes-szorzat értelmezési tartományának dimenziója értendő. (Egy n aritású függvénynek ezért n+1 az aritása, ha relációként tekintünk rá.) Az „aritás” kifejezés az unáris, bináris, ternáris stb. szavakból származik. Az unáris függvényeket vagy predikátumokat „monadikus”-nak, a binárisakat „diadikus”-nak is nevezik.
A matematika egyes területein az aritást „rangnak” (rank) is hívják,[1][2] de ennek a szónak számos más matematikai jelentése is van. A logikában és a filozófiában az aritást adicitás (adicity) és fok (degree) névvel is illetik.[3][4] A nyelvészetben az aritást általában valenciának (kapcsolóérték) hívják.[5]
A számítógép-programozásban gyakran szintaktikai különbség van a műveletek (operátorok) és függvények között; az operátorok aritása jellemzően 0, 1 vagy 2 (a ?: ternáris művelet is gyakori). A függvények argumentumainak száma tág határok között változhat, bár a túl sok argumentum követhetetlenné teheti a kódot. Egyes programozási nyelvek támogatják az ún. „variadic”, változó argumentumszámú függvényeket is.
Példák
[szerkesztés]Az „aritás” kifejezést ritkán használjuk a mindennapokban. Például ahelyett, hogy azt mondanánk, „az összeadás művelet aritása 2”, vagy „az összeadás 2 aritású művelet”, gyakoribb azt mondani: „az összeadás bináris művelet”. Általában az adott aritású műveletek vagy függvények elnevezése az n-alapú számrendszerek elnevezésének rendszerét követi, mint pl. bináris és hexadecimális. A latin prefixumot a -áris (-ary) végződéssel kombináljuk, így:
- A nulláris függvényeknek nincsenek argumentumaik.
- Az unáris függvényeknek egy argumentumuk van (egyváltozós függvény).
- A bináris függvényeknek két argumentumuk van (kétváltozós függvény).
- A ternáris függvényeknek három argumentumuk van (háromváltozós függvény).
- Az n-áris függvényeknek pedig n argumentumuk (n változós függvény).
Nulláris
[szerkesztés]Hasznos lehet az állandókat 0 aritású műveleteknek tekinteni, és így nullárisnak nevezni őket.
A nem funkcionális programozásban egy argumentumok nélküli függvénynek lehet értelme, és nem is feltétlenül jelent konstans visszatérési értéket, a különböző rejtett mellékhatások miatt. Gyakran az ilyen függvények valójában rendelkeznek nem explicit bemenettel, például globális változók formájában vagy a rendszer állapotát mint változót figyelembe véve (dátum, szabad memória stb.) Ez utóbbi jelenség még tisztán funkcionális programozási nyelvekben is előfordulhat.
Unáris
[szerkesztés]Az unáris műveletek közé tartozik matematikában és programozásban egyaránt az unáris összeadás és kivonás (+, −), a C programozási nyelvcsalád inkrementálás-dekrementálás műveletei, a faktoriális, reciprok, (alsó és felső) egészrész, törtrész, előjel, abszolút érték, komplex konjugált (bár ez egy komplex szám tekintetében unáris, aminek alacsonyabb szinten két része van), és normaképzés műveletei. További unáris műveletek a kettes komplemens képzése, a memóriahivatkozás és a negáció (logikai nem).
A lambda-kalkulus összes függvénye, és egyes funkcionális programozási nyelvek (főleg az ML leszármazottai) technikailag unáris, de lásd még az n-áris szakaszt.
Quine szerint a latin osztóesetek ragozása alapján – singuli, bini, terni stb. az unáris helyett a szinguláris a helyes kifejezés.[6] Abraham Robinson a Quine-féle használatot követi.[7]
Bináris
[szerkesztés]A programokban megtalálható legtöbb művelet kétváltozós. A programozás és az aritmetika területén ezek jellemzően a szorzás, összeadás, osztás műveletek. A logikai predikátumokat („OR” „XOR”, „AND”, „IMP” is tipikusan bináris műveletként használják. A CISC-architektúrákban gyakori hogy két forrás operandus van, és az eredmény ezek egyikében tárolódik.
Ternáris
[szerkesztés]A C, C++, C#, Java, Julia, Perl és ezek variánsai tartalmazzák a ?:
ternáris műveletet, ami egy úgynevezett feltételes művelet, három paraméterrel. A Forth nyelv is tartalmaz ternáris műveletet, ez a */
, ami összeszorozza az első két (egy szavas) számot és elosztja a harmadikkal, a köztes eredmény két szavas szám lenne, de a végeredmény nem az. A Python ternáris feltételes kifejezése, az x if C else y
. A dc calculator számos ternáris művelettel rendelkezik, mint a |, ami három elemet elővesz a veremből és tetszőleges precizitással kiszámítja értékét. Számos RISC assembly utasítás ternáris (szemben a két operandusú CISC utasításokkal) vagy még magasabb aritású; ternáris például a MOV %AX, (%BX,%CX), ami az AX regiszterbe betölti (MOV) annak a memóriacímnek a tartalmát, ami BX és CX regiszterek összegéből számolódik.
n-áris
[szerkesztés]Matematikai értelemben egy n-változós függvény tekinthető olyan egyváltozós függvénynek is, melynek egyetlen változója valamely szorzattér eleme. Sok esetben kézenfekvőbb mégis n-áris függvényekkel foglalkozni, mint például a multilineáris leképezések esetében (melyek nem lineáris leképezések a szorzattéren, ha n≠1).
Ugyanez elmondható a programozási nyelvekre is, egy sokváltozós függvény meghatározható egyváltozós függvényként is, melynek bemenete valamely összetett adattípus, mint pl. szám n-es, vagy magasabb rendű függvények (funktorok) esetében a currying technikával.
Változó aritás
[szerkesztés]A számítástudományban a változó argumentumszámot elfogadó függvényeket variadikusnak nevezik. A logikában és filozófiában a változó számú argumentumot elfogadó predikátumokat vagy relációkat multigrade-nek („többfokozatú”), anadikusnak (anadic) vagy változóan poliadikusnak (variably polyadic) nevezik.[8]
Más megnevezések
[szerkesztés]Az egyes specifikus aritások megnevezéseire általában latin eredetű neveket használnak, a latin osztó esetből, sorszámnévből vagy tőszámnévből képezve. A bináris és ternáris kifejezések terjedtek el széles körben a latin osztó esetből képzettek közül.
- Nulláris: 0-áris (a nūllus-ból, mivel a zéró használata nem terjedt el az ókorban).
- Unáris: 1-áris (az unus tőszámból, a disztributív szinguláris, singulī alak helyett).
- Bináris: 2-áris.
- Ternáris: 3-áris.
- Kvaternáris: 4-áris.
- Kvináris: 5-áris.
- Szenáris: 6-áris.
- Szeptenáris: 7-áris.
- Oktonáris: 8-áris (esetleg oktáris).
- Novenáris: 9-áris (esetleg nonáris).
- Denáris: 10-áris (esetleg decenáris)
- Poliadikus, multáris vagy multiáris: 2 vagy több operandus vagy paraméter.
- n-áris: n operandus vagy paraméter, de gyakran a poliadikus szinonimájaként használják.
Egy alternatív nevezéktan a megfelelő görög gyököket használja fel; például niladikus (vagy medadikus), monadikus, diadikus, triadikus, poliadikus s.í.t. Ebben a nevezéktanban a latinból származtatott aritás megfelelője az adicitás vagy adinitás.
Ezek a kifejezések sokszor bármilyen, a számmal kapcsolatos fogalomra utalhatnak, például az undenáris sakk egy 11×11-es táblán játszott sakkváltozat.
Fordítás
[szerkesztés]- Ez a szócikk részben vagy egészben az Arity című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.
Kapcsolódó szócikkek
[szerkesztés]Jegyzetek
[szerkesztés]- ↑ Michiel Hazewinkel. Encyclopaedia of Mathematics, Supplement III. Springer, 3. o. (2001). ISBN 978-1-4020-0198-7
- ↑ Eric Schechter. Handbook of Analysis and Its Foundations. Academic Press, 356. o. (1997). ISBN 978-0-12-622760-4
- ↑ Logic from A to Z. Routeledge, 7. o. (1999). ISBN 978-0-415-21375-2
- ↑ Modal Logic: An Introduction to its Syntax and Semantics. Oxford University Press, 121. o. (2008). ISBN 978-0-19-536658-7
- ↑ David Crystal. Dictionary of Linguistics and Phonetics, 6th, John Wiley & Sons, 507. o. (2008). ISBN 978-1-405-15296-9
- ↑ Quine, W. V. O. (1940), Mathematical logic, Cambridge, MA: Harvard University Press, p. 13
- ↑ Robinson, Abraham (1966), "Non-standard Analysis", Amsterdam: North-Holland, p. 19
- ↑ (2004) „Multigrade Predicates”. Mind 113, 609–681. o. DOI:10.1093/mind/113.452.609.
További információk
[szerkesztés]Online ingyenesen elérhető monográfia:
- Burris, Stanley N., and H.P. Sankappanavar, H. P., 1981. A Course in Universal Algebra. Springer-Verlag. ISBN 3-540-90578-2. Especially pp. 22–24.