# Aridade

Na matemática a aridade de uma função ou operação é o número de argumentos ou operandos tomados. A aridade de uma relação é o número n de elementos que compõem as n-uplas ordenadas pertencentes à relação.

## Aridade de uma função

Uma função ou operação f é dita de aridade n se $f:A_{1}\times \dots \times A_{n}\rightarrow B$ Note que se A$_1$, …, A$_n$ forem iguais, $f:A^{n}\rightarrow B$
Ex. A operação de negação de um número real, as funções seno e cosseno têm aridade 1. As operações da soma e multiplicação têm aridade 2.
Na matemática não é comum deparar-se com operações de aridade maior do que 2, salvo em áreas especializadas. Na programação o uso de operação 3-ária (if – then – else) é mais comum, embora não seja raro definir funções com mais de 3 argumentos.
Em geral, o nome das funções ou operações com uma dada aridade segue a convenção similar usada para sistema numeral n-base assim como binária e hexadecimal. Uma combinação de um prefixo latino com terminação -ária. Por exemplo:

### Função nulária

Uma função nulária não mapeia argumentos. É possível estabelecer uma correspondência biunívoca entre qualquer conjunto A e o conjunto das funções nulárias sobre A. Isso significa que qualquer elemento de A pode ser visto como uma função.
Ex.
* f$_3$ : {∅}→ N, onde f$_3$ (∅) = 3;
* f$_4$ : {∅}→ N, onde f$_4$ (∅) = 4;
* f$_0$ : {∅}→ N; tal que f$_0$ (∅) = 0;
* ∀n ∈ N ∃f$_n$ : N$^0$ → N tal que f$_n$ (∅) = n.
Algumas vezes é útil considerar uma constante como uma operação de aridade 0 e doravante chamada de nulária.
Também, em uma programação não funcional, uma função sem argumentos pode ser significativa (e não necessariamente constante) devido a efeitos colaterais. Frequentemente, tais funções possuem de fato algumas entradas escondidas às quais podem ser variáveis globais, incluindo o estado total de um sistema (tempo, memória livre…). Estes são importantes exemplos e que também existem em linguagens de programação puramente funcionais.

### Função unária

Uma operação unária mapeia um argumento. Ex:
* A função f : N → N tal que f(n) = 2n é uma função unária.
* A função identidade, definida por Id: N → N onde Id(n) = n é um outro exemplo de função unária.
Exemplos de operadores unários na matemática e em programação incluem o − e o + unário, o incremento (++) e decremento (−−) de operadores em C (não em linguagem lógica), o fatorial (!) e o valor absoluto.

### Função binária

Uma operação binária mapeia 2 argumentos Ex: A função π$_1$ : N x N→ N, onde π$_1$(m,n) = m, chamada 1$^a$ projeção é uma função binária. Semelhantemente obtém-se a 2$^a$ projeção π$_2$(m,n) = n.
A maioria dos operadores encontrados na matemática são os de forma binária. Estes podem ser operadores de multiplicação, adição e divisão, tanto para programação quanto para matemática. Predicados lógicos como OR, XOR, AND, são tipicamente usados como operadores binários com dois operando distintos.

### Função ternária

Uma operação ternária mapeia 3 argumentos. Ex: O operador condicional (if – then – else) utilizado em programação.

### Função n-ária

Uma função n-ária mapeia n argumentos.
Do ponto de vista da matemática, uma função com n argumentos podem sempre ser consideradas como uma função de um único argumento o qual é um elemento de algum produto cartesiano. Entretanto, pode ser conveniente para notação considerar funções n-árias normalmente. O mesmo é verdade para linguagens de programação, onde funções que tomam vários argumentos podem sempre ser definidos como funções que tomam um único argumento de algum tipo complexo ou "estrutura".

## Aridade de uma Relação

A aridade de uma relação R é o número de elementos de um elemento de R, ou seja, as relações R(a_1,…,a_n), P ⊆ A$_1$×…×A$_n$ e Q ⊆ N$^n$ são todas relações n-árias.

### Relação nulária

Uma relação nulária R é uma proposição, um valor de verdade. Ex: Está chovendo em Natal; 2 é maior do que 3; O gato é branco.

### Relação unária

Uma relação unária R(x) é uma propriedade que se aplica um elemento x. Ex:
* Está chovendo em Natal, pode ser escrito como Está_chovendo(Natal);
* 2 é maior do que 3: Maior_do_que_3(2);
* O gato é branco: Branco(gato).

### Relação binária

Uma relação binária R(x,y) é uma relação entre os elementos x e y. Ex:
* 2 é maior do que 3: Maior(2, 3);
* Alberto é pai de Márcia: Pai(alberto, márcia).

### Relação ternária

Uma relação ternária R(x, y, z) é uma relação entre os elementos x, y e z. Ex:
* Na esquina da Rua 5 com a Av. 6 há uma loja: Fica_na_esquina(loja, Rua 5, Av. 6).

### Relação n-ária

Uma relação n-ária R(x$_1$,…, x$_n$) é uma relação entre n elementos. Ex:
* A relação entre um indivíduo, seu nome, seu RG e seu CPF é uma relação quaternária;

## Referências gerais

* SCHEINERMAN, Edward R. Matemática Discreta - Uma Introdução. São Paulo: Thomson, 2003. ISBN 8522102910.