Aritás

A Wikipédiából, a szabad enciklopédiából

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ás 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]

  1. Michiel Hazewinkel. Encyclopaedia of Mathematics, Supplement III. Springer, 3. o. (2001). ISBN 978-1-4020-0198-7 
  2. Eric Schechter. Handbook of Analysis and Its Foundations. Academic Press, 356. o. (1997). ISBN 978-0-12-622760-4 
  3. Logic from A to Z. Routeledge, 7. o. (1999). ISBN 978-0-415-21375-2 
  4. Modal Logic: An Introduction to its Syntax and Semantics. Oxford University Press, 121. o. (2008). ISBN 978-0-19-536658-7 
  5. David Crystal. Dictionary of Linguistics and Phonetics, 6th, John Wiley & Sons, 507. o. (2008). ISBN 978-1-405-15296-9 
  6. Quine, W. V. O. (1940), Mathematical logic, Cambridge, MA: Harvard University Press, p. 13
  7. Robinson, Abraham (1966), "Non-standard Analysis", Amsterdam: North-Holland, p. 19
  8. (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: