# Atribuição (lógica)

Atribuição pode ser visto como uma noção auxiliar, um passo importante na busca de definir formalmente o conceito de verdade (por exemplo para as teorias de primeira ordem). Ela nos possibilita dar significados a termos de uma linguagem que lida com variáveis livres.
Em muitos casos, uma atribuição é uma função do tipo
    $a:{\mathit {Var}}\to {\mathit {A}}$
que leva um conjunto de variáveis aos valores possíveis que podem tomar.
É similar as noções de:
* ambiente de teoria dos tipos, computação e matemática (significado para variáveis ligadas);
* passagem de valores aos parâmetros de função (em computação).

## Definição formal

Sejam ${\mathcal {L}}$ uma linguagem de primeira ordem e ${\mathfrak {A}}$ uma estrutura (conjunto de objetos que dão significados semânticos a símbolos na linguagem lógica), ambas sendo da mesma assinatura $\Sigma$. Uma atribuição é uma função que leva um conjunto de variáveis V de ${\mathcal {L}}$ ao universo A de ${\mathfrak {A}}$:
    $a:V\to A$
Mais detalhadamente:
* ${\mathcal {L}}$ denota uma linguagem formal (aqui por simplicidade, uma linguagem de primeira ordem) com um conjunto de nomes de variáveis e também com símbolos não-lógicos estruturados de tal forma que para cada um deles deve-se saber se ele é usado para denotar uma operação ou uma relação com certa aridade.
* ${\mathfrak {A}}=\left\langle A,I\right\rangle$ denota uma estrutura da assinatura $\Sigma$, com o universo A e interpretação I; isto é uma estrutura com operações e relações correspondendo à assinatura $\Sigma$.
Dessa forma, a interpretação I enumera as operações e relações de ${\mathfrak {A}}$ por seus nomes, respeitando a assinatura $\Sigma$, e toma cada simbolo não-lógico da linguagem ${\mathcal {L}}$ para uma operação ou uma relação de ${\mathfrak {A}}$ de acordo com a aridade e de acordo com se é uma relação ou uma operação. É uma função especial a partir do sistema dos símbolos não-lógicos de ${\mathcal {L}}$ para o sistema de relações e operações de ${\mathfrak {A}}$, respeitando a assinatura comum da linguagem ${\mathcal {L}}$ e da estrutura ${\mathfrak {A}}$.
Por simplicidade: a interpretação I é uma função de símbolos não-lógicos de suas extensões, respeitando a assinatura comum.
Embora ${\mathcal {L}}$ seja uma linguagem formal, podemos fazer uma analogia com linguagens naturais que também tem "sentenças", compostas de "fragmentos nominais" organizados em volta de um "eixo verbal" com uma certa valência(aridade). Para estender a analogia com a linguagem natural, vale notar que usamos linguagens para: fazer afirmações (verdadeiras ou falsas) sobre o mundo e usar nomes (denotando objetos do mundo) tendo significado. Assim, de forma parecida, a linguagem formal é composta por sentenças, com cada sentença incorporando termos como fragmentos, centrados em torno de um predicado.
Cada termo pode ser imaginado como sendo construído sob uma forma padrão $f(t_{0},\dots ,t_{n})$ onde $f$ é o nome para uma operação n-ária e $t_{0}$,… $t_{n}$ são subtermos. De forma similar, construimos as sentenças.
Podemos agora completar a analogia mencionada com a linguagem natural e definindo o significado e de um termo de ${\mathcal {L}}$ e a verdade de uma sentença de ${\mathcal {L}}$.
Uma definição estrutural (e usando I de forma simplificada) permite-nos definir um significado para cada termo de ${\mathcal {L}}$: podemos associar cada termo a um elemento apropriado do universo A pertecente a ${\mathfrak {A}}$.
De forma parecida, podemos definir verdade para cada sentença de ${\mathcal {L}}$, mas há diferenças importantes, por exemplo, no que diz repeito a tratar conectivos lógicos, quantificadores e igualdade na forma apropriada.
Além disso, a existência de variáveis e quantificadores nos força a lidar com termos e fórmulas abertas, aquelas com variáveis livres. Assim, construímos uma noção para verdade e significado de uma forma mais complicada: primeiro, introduzimos essas noções parametrizadas por uma atribuição; a seguir, definimos suas correspondentes não-parametrizadas como sendo invariantes para as atribuições, isto é, valendo para cada atribuição possível.

## Veja também

* Valoração
* Linguagem formal
* Quantificadores
* Linguagem natural