O cálculo lambda binário foi projetado para fornecer uma definição concreta muito simples e elegante de complexidade descritiva (complexidade de Kolmogorov).
De uma maneira geral, a complexidade de um objeto é o comprimento da sua descrição mais curta.
De modo mais preciso, definimos descrições como cadeias de bits e identificamos um método descirtivo com algum dispositivo computacional, ou máquina que transforme descrições em objetos. Geralmente, os objetos são apenas cadeias de bits, entretanto, podem conter estrutura adicional como, por exemplo, pares de strings.
Originalmente, máquinas de Turing, o mais conhecido formalismo computacional, foram utilizadas para este propósito. Seu uso, no entanto, é dificultado pela dificuldade em sua construção e modularidade reduzida. Outro formalismo computacional clássico, o cálculo lambda, oferece vantagens distintas em termos da facilidade de uso. O cálculo lambda, contudo, não incorpora qualquer noção de entrada e saída (E/S), o que precisa ser projetado.
Entrada e Saída (E/S) Binária
Adicionar uma função primitiva de leitura de bits em cálculo lambda, como Chaitin fez em LISP, destruiria sua transparência referencial, a menos que se faça distinção entre uma ação de E/S e seu resultado, como Haskell faz com a sua E/S monádica. Mas isso requer um sistema de tipagem, o que adiciona complexidade desnecessária.
Em vez disso, BLC requer a tradução de sequências de bits em termos lambda, aos quais a máquina (também um termo lambda) pode ser prontamente aplicada.
Bits 0 e 1 são traduzidos nos booleanos lambda padrão B0 = True and B1 = False:
True =
False =
os quais podem ser usados diretamente para implementar o operador if-then-else.
Agora considere a função de emparelhamento
aplicado a dois termos M e N
.
Aplicando-se isto a um booleano, é produzido o componente de seleção desejado.
Uma strings = b0b1…bn−1 é representada por um emparelhamento repetido como
o que denotada-se como .
O z que aparece na expressão acima demanda alguma explicação adicional.
Delimitado versus não delimitado
Complexidade descritiva possui duas versões distintas, as quais dependem de a entrada ser considerada delimitada ou não.
Conhecer o fim de uma entrada torna mais simples a descrição de objetos. Por exemplo, pode-se apenas copiar toda a entrada para a saída. Esta versão é chamada complexidade plana ou simples.
Entretanto, isto seria informação adicional. Um sistema de arquivos, por exemplo, precisa armazenar separadamente o comprimento de arquivos. A linguagem C usa o caractere nulo para denotar o fim de uma seqüência de caracteres, o que traz o custo de esse caractere não estar disponível para strings.
A outra versão é chamada complexidade de prefixo. Este nome origina-se dos códigos de prefixo, sobre o qual a máquina precisa descobrir, a partir da entrada que leu até o ponto atual, se é necessário ler mais bits. Diz-se que, neste caso, a entrada é auto-delimitada. Isso funciona melhor para canais de comunicação, uma vez que pode-se enviar várias descrições, uma após o outro, e ainda assim diferenciá-las.
No modelo de E/S do BLC, a versão é ditada pela escolha do z. Se for mantido como uma variável livre e for necessário ele apareça como parte da saída, então a máquina deve estar trabalhando de modo auto-delimitado. Se, por outro lado, usamos um termo lambda especificamente projetado para ser fácil de distinguir de qualquer emparelhamento, a entrada torna-se, então, delimitada. BLC escolhe False para este fim, mas lhe dá o nome mais descritivo na alternativa de Nil. Lidar com listas que podem ser Nil é simples: uma vez
, e
pode-se escrever funções M e N para lidar com os dois casos, a única ressalva é que
N será passado para M como seu terceiro argumento.
Universalidade
Podemos encontrar um método de descrição U tal que, para qualquer outro método de descrição D, exista uma constante c (a qual depende somente de D) de tal forma que nenhum objeto precise de mais do que c bits aidionais para descrever com o método U em vez do método D. O BLC é projetado para tornar essas constantes relativamente pequenas. De fato, a constante será o comprimento de uma codificação binária de um D-interpretador escrito em BLC e U será um termo lambda que analisa essa codificação e executa este interpretador decodificado sobre o restante da entrada. Não é preciso que U saiba se a descrição é delimitada ou não; o funcionamento é o mesmo.
Um vez resolvido o problema da tradução de cadeias de bits para cálculo lambda, agora enfrentamos o problema oposto: como codificar termos lambda em cadeias de bits?
Codificação Lambda
Primeiro, precisamos escrever nossos termos lambda em uma notação especial usando o que é conhecido como índices de De Bruijn. A codificação é a definida recursivamente da seguinte maneira
Por exemplo, a função de emparelhamento é escrita no formato de De Bruijn, e tem codificação .
Um termo lambda fechado é aquele em que todas as variáveis estão ligadas, isto é, sem quaisquer variáveis livres. No formato de De Bruijn, isso significa que um índice i só pode aparecer dentro de pelo menos i lambdas aninhados. O número de termos fechados de n bits de tamanho é definido (sequência A114852 na OEIS).
O termo fechado mais curto possível é a função identidade . No modo delimitado, esta máquina apenas copia sua entrada para a sua saída.
Então, qual é essa máquina universal U? Aqui está, em formato de De Bruijn (todos os índices são de um dígito):
Uma análise detalhada da máquina U pode ser encontrada em [1].
Complexidade, concretamente
Em geral, podemos fazer com que a complexidade de um objeto seja definida em termos de vários outros objetos fornecidos como argumento adicional para a máquina universal. Complexidade KS Plana (ou Simples) e complexidade de prefixo KP são definidas por
Teoremas, concretamente
O programa identidade prova que
O programa prova que
O programa
prova que
onde é o código Levenstein para o x definido por
onde identificamos números e bitstrings de acordo com a ordem lexicográfico. Este código tem uma propriedade para todo k,
Além disso, a ordem lexicográfica de números delimitados passa a coincidir com ordem numérica.
Número
String
Delimitado
0
0
1
0
10
2
1
110 0
3
00
110 1
4
01
1110 0 00
5
10
1110 0 01
6
11
1110 0 10
7
000
1110 0 11
8
001
1110 1 000
9
010
1110 1 001
Complexidade dos conjuntos
A complexidade de um conjunto de números naturais é a complexidade de sua seqüência característica, um termo lambda infinito no Cálculo Lambda Infinito.
O programa
cujos primeiros 100 bytes de saída são
prova que
(um primo)
enquanto uma simples variação prova que
Isto é ainda mais curto do que a estrutura de Haskell, com 23 bytes de comprimento
nubBy(((>1).).gcd)[2..]
Simetria da Informação
O programa
prova que
onde é o programa mais curto para x.
Esta desigualdade representa a metade mais fácil de uma igualdade (a menos de uma constante) conhecido como Simetria de informação. Provar o inverso
envolve simular infinitamente muitos programas de maneira articulada, vendo quais terminam e devolvem como saída o par de x (para o qual um programa mais curto é dado) e algum y, e para cada programa p, solicitar uma nova palavra de código para y com comprimento . A desigualdade de Kraft garante que esta enumeração infinito de chamadas pode ser cumprida, e, de fato, palavras de código para y podem ser decodificadas em tempo real, juntamente com a enumeração acima. Detalhes deste resultado fundamental, realizado por Chaitin, podem ser encontradas em [2].
Um quine
O termo concatena duas cópias de sua entrada, provando que
Aplicá-lo à sua própria codificação devolve um quine com 132 bits:
Compressão
Até agora, vimos, de fato, muito pouco sobre um objeto em uma descrição mais curta; no último exemplo, estávamos apenas quebrando o mesmo. Para , entretanto, nós comprimimos em bits.
O que poderia ser o programa mais curto que produz a maior saída? O seguinte é um bom candidato: o programa , com 55 bits de tamanho, usa Codificação de Church para devolver exatamente bits. Este resultado é superior a ferramentas como gzip e bzip2, compressores que precisam de 344 e 352 bits, respectivamente, para descrever uma mesma saída (como um arquivo com 8192 bytes com um único nome de letra).
Probabilidade de parada
A probabilidade de parada da máquina universal de prefixos é definida como a probabilidade de que ela irá devolver qualquer termo que esteja na forma normal fechado (o que inclui todas as strings traduzidas):
Com algum esforço, podemos determinar os primeiros 4 bits deste número especial da sabedoria:
onde a probabilidade .00012 = 2−4 já é uma contribuição nos programas 00100 e 00101 em termos de True e False.
BLC8: E/S com tamanho em bytes
Enquanto fluxos de bits são bons na teoria, eles performance ruim no mundo real. A linguagem BLC8 é uma variação mais prática do BLC em que os programas operam em um fluxo de bytes, onde cada byte é representado como uma lista delimitada de 8 bits, em ordem big-endian.
BLC8 requer uma máquina universal mais complicada.
O interpretador em U8 mantém o controle dos bytes restantes e dos bits restantes no byte atual, descartando os últimos quando a análise é concluída. Assim, o tamanho do U8, que é de 355 bits em um programa BLC, passa a ser de 45 bytes em BLC8.
Brainfuck
O programa BLC8 a seguir
é um interpretador Brainfuck com fita ilimitada em 829 bits (ou 104 bytes). A formatação obscurece a ocorrência de índices de dois dígitos: um 10 na linha 1, um 15 na linha 2, e um 11 e três 12s na linha 3. Estes índices são marcados com sublinhados para distingui-los dos índices de um dígito.
Isto fornece um bom exemplo da propriedade que métodos de descrição universais diferem em complexidade por no máximo uma constante. Escrever um intérprete BLC8 em Brainfuck, o que proporcionaria um limite superior correspondente na outra direção, fica como um exercício aos programadores Brainfuck.
O interpretador espera que a sua entrada consista de um programa Brainfuck seguido por um ] seguido pela entrada do programa Brainfuck. O interpretador só olha para os bits 0,1,4 de cada caractere para determinar qual entre ,-.+<>][ é. Portanto, quaisquer outros caracteres além destes oito serão retirados de um programa Brainfuck. Consumir mais entrada do que o disponível resulta em um erro (o resultado não-lista ).
Este interpretador é uma tradução aproximada da seguinte versão escrita em Haskell.
↑ abJohn Tromp, Binary Lambda Calculus and Combinatory Logic, in Randomness And Complexity, from Leibniz To Chaitin, ed. Cristian S. Calude, World Scientific Publishing Company, October 2008. (The last reference, to an initial Haskell implementation, is dated 2004) (pdf version)
↑G J Chaitin, Algorithmic information theory, Volume I in Cambridge Tracts in Theoretical Computer Science, Cambridge University Press, October 1987, (pdf version)Arquivado em 15 de dezembro de 2011, no Wayback Machine.
Posición geográfica de Chipre. Este artículo o sección necesita referencias que aparezcan en una publicación acreditada.Este aviso fue puesto el 20 de marzo de 2015. La Gastronomía de Chipre está fuertemente relacionada con las cocinas griega y turca. Es considerada una de las cocinas mediterráneas debido a la posición geográfica de la isla. Platos típicos afelia Tahinli çörek flaouna/pilavuna frunsua halloumi/hellim a la parrilla molehiya sheftalia/şeftali yepse Enlaces externo...
Petr Jiráček Datos personalesNacimiento Tuchořice, Checoslovaquia - República Checa2 de marzo de 1986 (37 años)Nacionalidad(es) ChecaAltura 1.80 metrosCarrera deportivaDeporte FútbolClub profesionalDebut deportivo 2006(F. K. Baník Sokolov)Posición CentrocampistaRetirada deportiva 2022[1](F. C. Fastav Zlín B)Selección nacionalSelección CZE República ChecaPart. (goles) 28 (3)[editar datos en Wikidata] Petr Jiráček (Tuchořice, Distrito de Louny...
Tren con destino Pamplona El desarrollo del ferrocarril en Navarra como medio de transporte de masas ha sido inferior al de otras regiones de España y Europa. En la actualidad (2013), Navarra cuenta con tres líneas ferroviarias que totalizan una red de 175 km. Las citadas líneas son: Madrid-Irún/Hendaya, Alsasua-Zaragoza (ver artículo línea de ferrocarril Castejón de Ebro-Alsasua) y Bilbao-Castejón. Toda la red está electrificada, pero solo una pequeña fracción (los tramos de la Ma...
Not to be confused with G. Holmes Braddock Senior High School. For other uses, see Braddock (disambiguation). This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages) This article's tone or style may not reflect the encyclopedic tone used on Wikipedia. See Wikipedia's guide to writing better articles for suggestions. (September 2011) (Learn how and when to remove this template message) This articl...
У Вікіпедії є статті про інших людей із прізвищем Пригунов. Пригунов Лев ГеоргійовичНародився 23 квітня 1939(1939-04-23) (84 роки)Алма-Ата, СРСРГромадянство СРСР РосіяДіяльність кіноактор, телеактор, актор театру, актор озвучування, художник, поет, мемуаристAlma m...
Stadium located in Nashville, Tennessee, United States Dudley Field redirects here. For the stadium in El Paso, Texas, see Dudley Field (El Paso). FirstBank StadiumThe stadium during a Vanderbilt vs. Tennessee game in 2016FirstBank StadiumLocation in NashvilleShow map of NashvilleFirstBank StadiumLocation in TennesseeShow map of TennesseeFirstBank StadiumLocation in the United StatesShow map of the United StatesFormer namesDudley Field (1922–1981)Vanderbilt Stadium (1981–2022)LocationJess...
Infraclass of mammals in the clade Metatheria This article is about the mammals. For frogs, see Marsupial frog. MarsupialsTemporal range: Paleocene–Recent PreꞒ Ꞓ O S D C P T J K Pg N Possible Late Cretaceous records Clockwise from left: eastern grey kangaroo, Virginia opossum, long-nosed bandicoot, Monito del monte and Tasmanian devil representing the orders Diprotodontia, Didelphimorphia, Peramelemorphia, Microbiotheria and Dasyuromorphia respectively Scientific classification Domain: ...
1988 studio album by StetsasonicIn Full GearStudio album by StetsasonicReleasedJune 21, 1988[1]Genre Golden age hip hop[2] jazz rap[2] dancehall[2] rap rock[2] Miami bass[2] Length63:31Label Tommy Boy Warner Bros. ProducerDaddy-OPrince Paul DBCStetsasonic chronology On Fire(1986) In Full Gear(1988) Blood, Sweat & No Tears(1991) In Full Gear is the second studio album by American hip hop band Stetsasonic, released in 1988 by Tommy Boy...
The history of Kaziranga National Park in the Golaghat and Nagaon districts of the state of Assam, India, can be traced back to the beginning of the twentieth century, in 1904. It now is a World Heritage Site and hosts two-thirds of the world's Great One-horned Rhinoceroses, tigers, and many other endangered animals. Reserve Forest Baroness Curzon, Mary Victoria Leiter Curzon who requested the creation of the Kaziranga conservation area in 1904 In the early nineteenth century, the area around...
American politician Grace Hamilton redirects here. For other uses, see Grace Hamilton (disambiguation). Grace Towns HamiltonMember of the Georgia House of Representativesfrom the 137th, 112th and 31st districtIn office1966–1984Succeeded byMable Thomas Personal detailsBorn(1907-02-10)February 10, 1907Atlanta, Georgia, U.S.DiedJune 17, 1992(1992-06-17) (aged 85)Atlanta, Georgia, U.S.Resting placeSouth View CemeteryPolitical partyDemocraticSpouseHenry Cooke HamiltonChildrenEle...
This article is about the bridge in the United States. For the bridge in England, see Town Bridge, Newbury. For the bridge in Wales, see Newport Town Bridge. United States historic placeTown BridgeU.S. National Register of Historic Places Show map of ConnecticutShow map of the United StatesLocationTown Bridge Rd. over Farmington River, Canton, ConnecticutCoordinates41°49′28″N 72°55′43″W / 41.82444°N 72.92861°W / 41.82444; -72.92861Arealess than one acreBuil...
У этого термина существуют и другие значения, см. Пиксель (значения). Pixel C Производитель Google Серия Google Pixel Дата выпуска 8 декабря 2015 Начальная цена 32 ГБ: US$499 64 ГБ: US$599Pixel C клавиатура: US$149 Тип Планшет Размеры 242 мм х 179 мм х 7 мм Масса 517 гр. Операционная система Android 6.0 Marshmal...
Conan novelette by Robert E. Howard For the collection of the same title that contains this story, see The Devil in Iron (collection). The Devil in IronShort story by Robert E. HowardCover for Weird Tales, August 1934. Art by Margaret BrundageCountryUnited StatesLanguageEnglishGenre(s)FantasyPublicationPublished inWeird TalesPublication typePulp magazinePublisherRural Publishing CorporationPublication dateAugust 1934ChronologySeriesConan the Cimmerian Queen of the Black Coast The...
Aïda Pour les articles homonymes, voir Aïda. Aida « Immenso Fthà ! » Le « Tout puissant Ptah » invoqué par le chœur du finale de l'acte I.Statue du dieu égyptien trouvée à Thèbes. XVIIIe dynastie égyptienne, règne d'Aménophis III. Musée égyptien de Turin. Données clés Genre Opéra Nbre d'actes 4 Musique Giuseppe Verdi Livret Antonio Ghislanzoni Langueoriginale Italien Sourceslittéraires Auguste-Édouard Mariette Dates decomposition 1870-1871 Créa...
Brazilian politician In this Portuguese name, the first or maternal family name is Neves and the second or paternal family name is Cunha. Aécio NevesNeves in 2014Senator for Minas GeraisIn office1 February 2011 – 1 February 2019National President of the Brazilian Social Democracy PartyIn office18 May 2013 – 18 May 2017Preceded bySérgio GuerraSucceeded byTasso Jereissati (Acting)Governor of Minas GeraisIn office1 January 2003 – 31 March 2010Vice GovernorC...
List of events in the year 1155 ← 1154 1153 1152 1151 1150 1155 in Ireland → 1156 1157 1158 1159 1160 Centuries: 11th 12th 13th 14th Decades: 1130s 1140s 1150s 1160s 1170s See also:Other events of 1155 List of years in Ireland Events from the year 1155 in Ireland. Incumbents High King: Toirdelbach Ua Conchobair Events Pope Adrian IV issues the papal bull Laudabiliter, granting Henry II of England the right to rule Ireland,[1][2] after Henry convinced the Pope that ...
Peñacerrada-UrizaharraPeñacerrada Entidad subnacional Peñacerrada-UrizaharraPeñacerradaLocalización de Peñacerrada-UrizaharraPeñacerrada en España Peñacerrada-UrizaharraPeñacerradaLocalización de Peñacerrada-UrizaharraPeñacerrada en ÁlavaCoordenadas 42°38′37″N 2°42′29″O / 42.64356, -2.70796Entidad Asentamiento, Concejo de Álava, Localidad y Capital municipal • País España • Comunidad autónoma País Vasco • Provincia Álava...
منتخب الولايات المتحدة تحت 21 سنة لكرة القدم بلد الرياضة الولايات المتحدة الفئة كرة قدم تحت 21 سنة للرجال [لغات أخرى] رمز الفيفا USA مشاركات تعديل مصدري - تعديل منتخب الولايات المتحدة الأمريكية تحت 21 سنة لكرة القدم (بالإنجليزية: United States men's national under-21 soccer te...
Gustav FreijGustav Freij en 1952.BiographieNaissance 17 mars 1922MalmöDécès 4 août 1973 (à 51 ans)MalmöSépulture Östra kyrkogården, Malmö (en)Nationalité suédoiseActivité LutteurAutres informationsTaille 1,7 mSport Lutte (en)modifier - modifier le code - modifier Wikidata Gustav Freij (né le 17 mars 1922 et mort le 4 août 1973) est un lutteur suédois spécialiste de la lutte gréco-romaine. Il participe aux Jeux olympiques d'été de 1948, aux Jeux olympiques d'été de 1...