Logotipo
Unionpédia
Comunicação
Disponível no Google Play
Novo! Faça o download do Unionpédia em seu dispositivo Android™!
Faça o download
Acesso mais rápido do que o navegador!
 

Cálculo lambda

Índice Cálculo lambda

Na lógica matemática e na ciência da computação, lambda cálculo, também escrito como cálculo-λ é um sistema formal que estuda funções recursivas computáveis, no que se refere a teoria da computabilidade, e fenômenos relacionados, como variáveis ligadas e substituição.

75 relações: Açúcar sintático, Alan Turing, Algoritmo, Alonzo Church, Antiunificação (ciências da computação), APL (linguagem de programação), Avaliação preguiçosa, Callback, Cálculo Kappa, Cálculo lambda binário, Cálculo lambda simplesmente tipado, Ciência da computação, Codificação de Church, Coletor de lixo (informática), Combinador de ponto fixo, Combinadores SKI, Computabilidade, Confluência (sistemas de reescrita de termos), Conjuntos criativos e produtivos, Construtivismo (matemática), Corrado Böhm, Corretude (lógica), Entscheidungsproblem, Espaço funcional, Estratégia de avaliação, Forma normal beta, Função computável, Gérard Berry, Gordon Plotkin, Gramática categorial combinatória, Gramática irrestrita, Haskell (linguagem de programação), Haskell Curry, História das linguagens de programação, Interpretação de Brouwer–Heyting–Kolmogorov, Iota e Jot, Isomorfismo de Curry-Howard, Λ, John Barkley Rosser, Laço infinito, Lógica combinatória, Lógica do functor predicado, Letras gregas usadas em matemática, ciências e engenharia, Lisp, Máquina de Turing, Máquinas de Turing equivalentes, Método efetivo, Modelo de computação, Moses Schönfinkel, OCaml, ..., P-completo, Paradoxo de Curry, Paradoxo Kleene-Rosser, Pico (linguagem de programação), Polimorfismo paramétrico, Ponteiro (programação), Problema da parada, Programação funcional, Propriedades de normalização forte e fraca, Python, Semântica denotacional, Sistema de redução, Sistema formal, Snap! (linguagem de programação), Stephen Kleene, Substituição (lógica), Teorema de Church-Rosser, Teoria da computação, Tese de Church-Turing, Turing completude, Unificação, Unlambda, Variáveis livres e ligadas, Wikifunctions, William Alvin Howard. Expandir índice (25 mais) »

Açúcar sintático

Em ciência da computação, um açúcar sintático é uma sintaxe dentro da linguagem de programação que tem por finalidade tornar suas construções mais fáceis de serem lidas e expressas.

Novo!!: Cálculo lambda e Açúcar sintático · Veja mais »

Alan Turing

Alan Mathison Turing (Londres, 23 de junho de 1912 Wilmslow, Cheshire, 7 de junho de 1954) foi um matemático, cientista da computação, lógico, criptoanalista, filósofo e biólogo teórico britânico.

Novo!!: Cálculo lambda e Alan Turing · Veja mais »

Algoritmo

Uma animação do algoritmo de ordenação quicksort de uma matriz de valores ao acaso. As barras vermelhas marcam o elemento pivô. No início da animação, estando o elemento para o lado direito, é escolhido como o pivô Em matemática e ciência da computação, um algoritmo é uma sequência finita de ações executáveis que visam obter uma solução para um determinado tipo de problema.

Novo!!: Cálculo lambda e Algoritmo · Veja mais »

Alonzo Church

Alonzo Church (Washington, DC, 14 de junho de 1903 — Hudson (Ohio), 8 de novembro de 1995) foi um matemático estadunidense.

Novo!!: Cálculo lambda e Alonzo Church · Veja mais »

Antiunificação (ciências da computação)

Antiunificação é o processo de construção de uma generalização comum a duas expressões simbólicas.

Novo!!: Cálculo lambda e Antiunificação (ciências da computação) · Veja mais »

APL (linguagem de programação)

APL é uma linguagem de programação destinada a operações matemáticas.

Novo!!: Cálculo lambda e APL (linguagem de programação) · Veja mais »

Avaliação preguiçosa

Avaliação preguiçosa (também conhecida por avaliação atrasada) é uma técnica usada em programação para atrasar a computação até um ponto em que o resultado da computação é considerado necessário.

Novo!!: Cálculo lambda e Avaliação preguiçosa · Veja mais »

Callback

Em programação de computadores, um método de callback é uma rotina que é passada como parâmetro para outro método.

Novo!!: Cálculo lambda e Callback · Veja mais »

Cálculo Kappa

Em lógica matemática, teoria das categorias, e ciência da computação, kappa cálculo é um sistema formal para a definição de funções de primeira ordem.

Novo!!: Cálculo lambda e Cálculo Kappa · Veja mais »

Cálculo lambda binário

Cálculo lambda binário, do inglês binary lambda calculus (BLC), é uma técnica que utiliza o cálculo lambda para estudar a complexidade de Kolmogorov através de uma codificação binária de termos lambda, e o uso de máquina universal.

Novo!!: Cálculo lambda e Cálculo lambda binário · Veja mais »

Cálculo lambda simplesmente tipado

O cálculo lambda simplesmente tipado (\lambda^\to), ou cálculo lambda com tipagem simples, é um modelo da teoria dos tipos que adiciona o conceito de tipagem ao cálculo lambda.

Novo!!: Cálculo lambda e Cálculo lambda simplesmente tipado · Veja mais »

Ciência da computação

A Ciência da Computação lida com fundamentos teóricos da informação, computação, e técnicas práticas para suas implementações e aplicações.

Novo!!: Cálculo lambda e Ciência da computação · Veja mais »

Codificação de Church

Em matemática, a codificação de Church é uma forma de incorporar dados e operadores ao cálculo lambda, a forma mais conhecida dos numerais de Church, uma representação dos números naturais usando a notação lambda.

Novo!!: Cálculo lambda e Codificação de Church · Veja mais »

Coletor de lixo (informática)

Coletor de lixo (garbage collector, ou o acrônimo GC) é um processo usado para a automação do gerenciamento de memória.

Novo!!: Cálculo lambda e Coletor de lixo (informática) · Veja mais »

Combinador de ponto fixo

Em ciência da computação, um combinador de ponto fixo  é uma função y de alta ordem que satisfaz a equação ou em palavras: y, quando aplicado a uma função arbitrária f, produz o mesmo resultado que f aplicada para o resultado da aplicação f para y. É assim chamado porque, por definição  x.

Novo!!: Cálculo lambda e Combinador de ponto fixo · Veja mais »

Combinadores SKI

Os combinadores SKI são um modelo computacional que pode ser percebido como uma versão reduzida do cálculo lambda não tipado.

Novo!!: Cálculo lambda e Combinadores SKI · Veja mais »

Computabilidade

Computabilidade é a habilidade de resolver problemas de forma efetiva.

Novo!!: Cálculo lambda e Computabilidade · Veja mais »

Confluência (sistemas de reescrita de termos)

A confluência é uma propriedade de sistemas de reescrita de termos definida do seguinte modo: dado um sistema de reescrita de termos R e um termo t neste sistema, a escolha de uma das regras de R a ser aplicada sobre t não modificará o resultado obtido pela reescrita de t, isto é, não importa as regras escolhidas a serem aplicadas, pois a escolha de diferentes regras sempre resultará em um elemento comum atingido a partir de cada escolha possível para reescrita do termo.

Novo!!: Cálculo lambda e Confluência (sistemas de reescrita de termos) · Veja mais »

Conjuntos criativos e produtivos

Em Teoria da Computabilidade, conjuntos produtivos e conjuntos criativos são tipos de conjuntos de números naturais que tem aplicações importantes em lógica matemática.

Novo!!: Cálculo lambda e Conjuntos criativos e produtivos · Veja mais »

Construtivismo (matemática)

Na filosofia da matemática, o construtivismo afirma que é preciso encontrar (ou "construir") um objeto matemático para provar que ele existe.

Novo!!: Cálculo lambda e Construtivismo (matemática) · Veja mais »

Corrado Böhm

Corrado Böhm (Milão, – Roma) foi um cientista da computação italiano.

Novo!!: Cálculo lambda e Corrado Böhm · Veja mais »

Corretude (lógica)

Na Ciência da computação teórica, a corretude de um algoritmo pode ser afirmada quando se diz que o algoritmo é correto com respeito à determinada especificação.

Novo!!: Cálculo lambda e Corretude (lógica) · Veja mais »

Entscheidungsproblem

O Entscheidungsproblem (termo alemão para "problema de decisão") é um problema da lógica simbólica que consiste em achar um algoritmo genérico para determinar se um dado enunciado da lógica de primeira ordem pode ser provado.

Novo!!: Cálculo lambda e Entscheidungsproblem · Veja mais »

Espaço funcional

Em matemática, um espaço funcional é um conjunto de funções de um conjunto X para um conjunto Y, de uma dada classe.

Novo!!: Cálculo lambda e Espaço funcional · Veja mais »

Estratégia de avaliação

Em ciência da computação, estratégia de avaliação é um conjunto de regras para determinar a avaliação de expressões em uma linguagem de programação.

Novo!!: Cálculo lambda e Estratégia de avaliação · Veja mais »

Forma normal beta

Na teoria do cálculo lambda, um termo se encontra na forma normal beta se não é possível nenhuma redução beta.

Novo!!: Cálculo lambda e Forma normal beta · Veja mais »

Função computável

Funções computáveis são os objetos básicos de estudo na teoria da computabilidade.

Novo!!: Cálculo lambda e Função computável · Veja mais »

Gérard Berry

Gérard Philippe Berry é um cientista da computação francês.

Novo!!: Cálculo lambda e Gérard Berry · Veja mais »

Gordon Plotkin

Gordon David Plotkin, FRS, FRSE (Glasgow) é um cientista da computação britânico, professor da School of Informatics da Universidade de Edimburgo.

Novo!!: Cálculo lambda e Gordon Plotkin · Veja mais »

Gramática categorial combinatória

Gramática categorial combinatória (CCG) é um formalismo gramatical eficiente analisável, ainda linguisticamente expressivo.

Novo!!: Cálculo lambda e Gramática categorial combinatória · Veja mais »

Gramática irrestrita

Em Teoria da computação, a Gramática irrestrita (conhecida também como Gramática com estrutura de frase) é também conhecida como Tipo 0 da Hierarquia de Chomsky, que são aquelas às quais nenhuma limitação é imposta.

Novo!!: Cálculo lambda e Gramática irrestrita · Veja mais »

Haskell (linguagem de programação)

Haskell é uma linguagem de programação puramente funcional, de propósito geral, nomeada em homenagem ao lógico Haskell Curry.

Novo!!: Cálculo lambda e Haskell (linguagem de programação) · Veja mais »

Haskell Curry

Haskell Brooks Curry (Millis, 12 de setembro de 1900 – State College, 1 de setembro de 1982) foi um matemático estadunidense.

Novo!!: Cálculo lambda e Haskell Curry · Veja mais »

História das linguagens de programação

História das linguagens de programação A história das linguagens de programação data da criação dos primeiros computadores mecânicos.

Novo!!: Cálculo lambda e História das linguagens de programação · Veja mais »

Interpretação de Brouwer–Heyting–Kolmogorov

Em Lógica matemática, a interpretação de Brouwer–Heyting–Kolmogorov, ou interpretação BHK, de Lógica intuicionista foi proposta por L. E. J. Brouwer, Arend Heyting e independentemente por Andrey Kolmogorov.

Novo!!: Cálculo lambda e Interpretação de Brouwer–Heyting–Kolmogorov · Veja mais »

Iota e Jot

Iota e sua sucessora Jot (do idioma grego iota, hebraico Yodh, as menores letras nesses dois alfabetos) são linguagens de programação esotéricas, Turing tarpits que são projetadas para ser tão pequenas quanto possível, mas ainda assim Turing completa.

Novo!!: Cálculo lambda e Iota e Jot · Veja mais »

Isomorfismo de Curry-Howard

O isomorfismo de Curry–Howard é uma relação direta entre programas de computador e provas matemáticas.

Novo!!: Cálculo lambda e Isomorfismo de Curry-Howard · Veja mais »

Λ

Lambda (Λ ou λ) é a décima primeira letra do alfabeto grego.

Novo!!: Cálculo lambda e Λ · Veja mais »

John Barkley Rosser

John Barkley Rosser Sr. (Jacksonville, – Madison, Wisconsin) foi um lógico estadunidense, conhecido por sua parte no Teorema de Church-Rosser em cálculo lambda.

Novo!!: Cálculo lambda e John Barkley Rosser · Veja mais »

Laço infinito

Um laço infinito é uma sequência de instruções em um programa de computador que repete infinitamente, ou porque não há condição de parada ou porque a condição existe mas nunca é atingida.

Novo!!: Cálculo lambda e Laço infinito · Veja mais »

Lógica combinatória

Lógica combinatória é uma notação introduzida por Moses Schönfinkel e Haskell Curry para eliminar a necessidade de variáveis em lógica matemática.

Novo!!: Cálculo lambda e Lógica combinatória · Veja mais »

Lógica do functor predicado

Em lógica matemática, predicado functor lógica (PFL) é uma das várias maneiras de expressar o que a lógica de primeira ordem (também conhecida como lógica de predicado) puramente algébrica significa, por exemplo, sem variáveis quantificáveis.

Novo!!: Cálculo lambda e Lógica do functor predicado · Veja mais »

Letras gregas usadas em matemática, ciências e engenharia

As letras gregas são usadas em matemática, ciências, engenharia e outras áreas onde a notação matemática é usada como símbolos para representar constantes, funções especiais, e também convencionalmente para representar variáveis.

Novo!!: Cálculo lambda e Letras gregas usadas em matemática, ciências e engenharia · Veja mais »

Lisp

Lisp é uma família de linguagens de programação concebida por John McCarthy em 1958.

Novo!!: Cálculo lambda e Lisp · Veja mais »

Máquina de Turing

Representação artística de uma máquina de Turing A Máquina de Turing é um dispositivo teórico conhecido como máquina universal, que foi concebido pelo matemático britânico Alan Turing (1912-1954), muitos anos antes de existirem os modernos computadores digitais (o artigo de referência foi publicado em 1936).

Novo!!: Cálculo lambda e Máquina de Turing · Veja mais »

Máquinas de Turing equivalentes

Uma máquina de Turing é um dispositivo teórico com uma capacidade de memória infinita, inicialmente concebida por Alan Turing em 1936.

Novo!!: Cálculo lambda e Máquinas de Turing equivalentes · Veja mais »

Método efetivo

Em lógica e matemática - especialmente metalógica e teoria da computabilidade - método efetivo Hunter, Geoffrey, Metalogic: uma Introdução ao Metateoria de lógica de primeira ordem padrão, University of California Press, 1971 (também chamado de procedimento efetivo) é o procedimento para uma classe de problemas é um método para o qual cada passo pode ser descrito como uma operação mecânica, e que, se seguidas rigorosamente resulta em.

Novo!!: Cálculo lambda e Método efetivo · Veja mais »

Modelo de computação

Em teoria da computabilidade, um modelo de computação é a definição de um conjunto de operações que podem ser usadas numa computação e seus respectivos custos.

Novo!!: Cálculo lambda e Modelo de computação · Veja mais »

Moses Schönfinkel

Moses Ilyich Schönfinkel (Моисей Исаевич Шейнфинкель) (Ekaterinoslav, 4 de setembro de 1889 – Moscou, 1942) foi um matemático soviético, conhecido pela invenção da lógica combinatória.

Novo!!: Cálculo lambda e Moses Schönfinkel · Veja mais »

OCaml

Objective Caml, também conhecida como OCaml (Objective Categorical Abstract Machine Language), é uma linguagem de programação funcional da família ML, desenvolvida pelo INRIA em 1996.

Novo!!: Cálculo lambda e OCaml · Veja mais »

P-completo

Na teoria da complexidade computacional, a noção de problema de decisão P-completo é útil na análise de questões como.

Novo!!: Cálculo lambda e P-completo · Veja mais »

Paradoxo de Curry

Paradoxo de Curry é um paradoxo que ocorre na teoria dos conjuntos ingênua ou lógicas ingênuas, e permite a derivação de uma sentença arbitrária de uma sentença auto-referente e algumas regras de dedução lógica aparentemente inócuas. É assim denominado em referência ao lógico Haskell Curry.

Novo!!: Cálculo lambda e Paradoxo de Curry · Veja mais »

Paradoxo Kleene-Rosser

Na Matemática, o Paradoxo Kleene-Rosser que mostra que certos sistemas da Lógica formal são inconsistentes, em particular a versão de Lógica combinacional de Curry introduzida em 1930, e o Cálculo lambda original de Church, introduzido em 1932–1933, ambos originalmente concebidos como sistemas de lógica formal.

Novo!!: Cálculo lambda e Paradoxo Kleene-Rosser · Veja mais »

Pico (linguagem de programação)

Pico é uma linguagem de programação desenvolvida no laboratório de programação da Virgem Univesiteit Brussel.

Novo!!: Cálculo lambda e Pico (linguagem de programação) · Veja mais »

Polimorfismo paramétrico

Em linguagens de programação e teoria dos tipos, polimorfismo paramétrico é uma forma de se tornar uma linguagem mais expressiva, enquanto continua mantendo toda sua tipagem estática segura.

Novo!!: Cálculo lambda e Polimorfismo paramétrico · Veja mais »

Ponteiro (programação)

Em programação, um ponteiro ou apontador é um tipo de dado de uma linguagem de programação cujo valor se refere diretamente a um outro valor alocado em outra área da memória, através de seu endereço.

Novo!!: Cálculo lambda e Ponteiro (programação) · Veja mais »

Problema da parada

Na teoria da computabilidade o experimento mental do problema da parada é um problema de decisão que pode ser declarado informalmente da seguinte forma: Alan Turing provou em 1936 que um algoritmo genérico para resolver o problema da parada para todos pares programa-entrada possíveis não pode existir.

Novo!!: Cálculo lambda e Problema da parada · Veja mais »

Programação funcional

Em ciência da computação, programação funcional é um paradigma de programação que trata a computação como uma avaliação de funções matemáticas e que evita estados ou dados mutáveis.

Novo!!: Cálculo lambda e Programação funcional · Veja mais »

Propriedades de normalização forte e fraca

Na matemática lógica e ciência da computação teórica, um Sistema de Reescrita tem a propriedade de normalização forte ou é terminante (brevemente: a propriedade da normalização ou da terminação) se todos termos são fortemente normalizantes; isto é, se todas as sequências de reescrita eventualmente terminam em um termo irredutível também chamado de forma normal.

Novo!!: Cálculo lambda e Propriedades de normalização forte e fraca · Veja mais »

Python

Python é uma linguagem de programação de alto nível, interpretada de script, imperativa, orientada a objetos, funcional, de tipagem dinâmica e forte.

Novo!!: Cálculo lambda e Python · Veja mais »

Semântica denotacional

Semântica denotacional designa uma abordagem de semântica formal.

Novo!!: Cálculo lambda e Semântica denotacional · Veja mais »

Sistema de redução

Em matemática um sistema de redução é um sistema onde termos podem ser reescritos usando uma lista finita, ou infinita, de regras de reescrita Exemplos de sistemas de redução incluem sistemas de reescrita de cadeias de caractere, sistemas de reescrita de termos, cálculo lambda sob conversão lambda e sistemas de redução combinatória.

Novo!!: Cálculo lambda e Sistema de redução · Veja mais »

Sistema formal

Um sistema formal ou sistema lógico é, por assim dizer, qualquer sistema de pensamento abstrato bem definido, em um modelo matemático.

Novo!!: Cálculo lambda e Sistema formal · Veja mais »

Snap! (linguagem de programação)

Snap! (anteriormente Build Your Own Blocks ou abreviadamente BYOB até ser renomeado para Snap! na versão 4.0 em 2013) é um Linguagem de programação educacional e ferramenta de autoria multimídia que pode ser (como o Scratch que oferece uma interface GUI amigável para crianças) usado por alunos, professores e pais para vários projetos educacionais e de entretenimento desde matemática e projetos de ciências naturais, incluindo simulações e visualização de experimentos, gravação de conteúdos com apresentações animadas, até histórias animadas de ciências sociais, arte interativa e música.

Novo!!: Cálculo lambda e Snap! (linguagem de programação) · Veja mais »

Stephen Kleene

Stephen Cole Kleene (Hartford, — Madison) foi um matemático estadunidense.

Novo!!: Cálculo lambda e Stephen Kleene · Veja mais »

Substituição (lógica)

Substituição é um conceito fundamental em lógica.

Novo!!: Cálculo lambda e Substituição (lógica) · Veja mais »

Teorema de Church-Rosser

O Teorema de Church-Rosser é um resultado de confluência para o cálculo lambda e também uma propriedade sobre sistemas de redução abstratos equivalente à confluência e a semi-confluência.

Novo!!: Cálculo lambda e Teorema de Church-Rosser · Veja mais »

Teoria da computação

A teoria da computação é um subcampo da ciência da computação e matemática que busca determinar quais problemas podem ser computados em um dado modelo de computação.

Novo!!: Cálculo lambda e Teoria da computação · Veja mais »

Tese de Church-Turing

Na teoria da computabilidade, a Tese de Church-Turing ou Tese de Church, assim nomeada em referência a Alonzo Church e Alan Turing, é uma hipótese sobre a natureza de artefatos mecânicos de cálculo, como computadores, e sobre que tipo de algoritmos eles podem executar.

Novo!!: Cálculo lambda e Tese de Church-Turing · Veja mais »

Turing completude

Na teoria da computação, a completude de Turing ou Turing-completo (do inglês: Turing-completeness; batizado em memória de Alan Turing), também chamado computacionalmente universal, é um conjunto de regras para manipulação de dados (semelhante a uma linguagem de programação, um autómato celular, um conjunto de instruções) que pode ser usado para resolver qualquer problema de computação (simula a lógica de qualquer algoritmo de computador).

Novo!!: Cálculo lambda e Turing completude · Veja mais »

Unificação

Unificação, em ciência da computação e na lógica, é um processo algorítmico de solução de equações entre expressões simbólicas.

Novo!!: Cálculo lambda e Unificação · Veja mais »

Unlambda

Unlambda é uma linguagem de programação esotérica inventada por David Madore, baseada em lógica combinatória: uma versão do cálculo lambda que omite o operador lambda.

Novo!!: Cálculo lambda e Unlambda · Veja mais »

Variáveis livres e ligadas

Em programação de computadores, uma variável livre é uma variável referenciada em uma função, que não é nem uma variável local nem um argumento daquela função.

Novo!!: Cálculo lambda e Variáveis livres e ligadas · Veja mais »

Wikifunctions

Wikifunctions é um catálogo editado colaborativamente de funções de computador que visa permitir a criação, modificação e reutilização de código-fonte.

Novo!!: Cálculo lambda e Wikifunctions · Veja mais »

William Alvin Howard

William Alvin Howard é um lógico matemático estadunidense.

Novo!!: Cálculo lambda e William Alvin Howard · Veja mais »

Redireciona aqui:

Cálculo Lambda, Lambda Cálculo, Lambda cálculo.

CessanteEntrada
Ei! Agora estamos em Facebook! »