Share to: share facebook share twitter share wa share telegram print page

Recursividade

Uma forma visual de recursão conhecida como efeito Droste.

Recursividade (em português europeu: Recorrência), é um termo geralmente usado para descrever o processo de repetição de um objeto de um jeito similar ao que já fora mostrado. Um bom exemplo disso são as imagens repetidas que aparecem quando dois espelhos são apontados um para o outro.

Definição formal

Na matemática e na ciência da computação, a recursão especifica (ou constrói) uma classe de objetos ou métodos (ou um objeto de uma certa classe) definindo alguns poucos casos base ou métodos muito simples (frequentemente apenas um), e então definindo regras para formular casos complexos em termos de casos mais simples.

Por exemplo, segue uma definição recursiva da ancestralidade de uma pessoa:

  • Os pais de uma pessoa são seus antepassados (caso base);
  • Os pais de qualquer antepassado são também antepassados da pessoa em consideração (passo recursivo).

É conveniente pensar que uma definição recursiva define objetos em termos de objetos “previamente definidos” dessa mesma classe que está sendo definida.

Definições como esta são frequentemente encontradas na matemática, por exemplo, a definição formal dos números naturais diz que 0 (zero) é um número natural, e todo número natural tem um sucessor, que é também um número natural.

Recursão na linguagem

O uso mais antigo de recursão na linguística, e o uso da recursão em geral, remete ao linguista Pāṇini em meados de 500 AC, o qual fez uso da recursão nas regras gramaticais do Sânscrito (língua clássica da Índia antiga que influenciou praticamente todos os idiomas ocidentais).

O linguista Noam Chomsky lançou a teoria de que a extensão ilimitada de uma língua natural é possível apenas pelo mecanismo recursivo de encaixar frases em frases. Assim, uma garotinha tagarela pode muito bem dizer, "Dorothy, que encontrou a Bruxa Má do Oeste na Terra dos Munchkins, onde a bruxa má da sua irmã foi morta, liquidou-a com um balde de água.” Claramente, duas frases simples — "Dorothy encontrou a Bruxa Má do Oeste na Terra dos Munchkins" e "Sua irmã foi morta na Terra dos Munchkins" — podem ser encaixadas em uma terceira frase, "Dorothy liquidou-a com um balde de água", para obter uma frase exacerbadamente prolixa.

Existe um jeito, possivelmente mais simples, de se entender processos recursivos:

  1. Nós já terminamos? Se sim, retorne o(s) resultado(s). Sem uma condição de parada como esta, uma recursão iria se repetir eternamente.
  2. Se não, simplifique o problema, resolva o(s) problema(s) mais simples, e então encaixe o(s) resultado(s) na solução do problema original. Então retorne a solução.

Também existe uma ilustração mais humorística: "Para entender a recursão, a pessoa deve primeiro entender a recursão."

Isto se baseia nesta frase de Andrew Plotkin: "Se você já sabe o que é a recursão, apenas se lembre da resposta. Caso contrário, encontre alguém que esteja mais próximo de Douglas Hofstadter do que você; então pergunte a ele ou a ela o que é a recursão."

Exemplos de objetos matemáticos frequentemente definidos recursivamente são funções, conjuntos, e especialmente fractais.

Entendendo a recursão em português claro

A recursão é o processo pelo qual passa um certo procedimento quando um dos passos do procedimento em questão envolve a repetição completa deste mesmo procedimento[1]. Um procedimento que se utiliza da recursão é dito recursivo. Também é dito recursivo qualquer objeto que seja resultado de um procedimento recursivo.

Para entendermos a recursão, devemos primeiro compreender a diferença entre um procedimento e a execução de um procedimento. Um procedimento é um conjunto de passos que devem ser tomados baseados em um conjunto de regras. A execução de um procedimento envolve seguir de fato as regras e executar os passos. Uma analogia para isso é que um procedimento é como uma ementa (cardápio) que nos fornece as opções possíveis, enquanto a execução de um procedimento é escolhermos de fato qual refeição nos será servida.

Um procedimento é dito recursivo quando um de seus passos consiste na chamada de uma nova execução do procedimento. Consequentemente, uma refeição recursiva com quatro pratos seria uma refeição em que a entrada, a salada, o prato principal ou a sobremesa por si próprios já consistissem em refeições. Então uma refeição recursiva poderia ser feita por purês de batata, salada verde, frango grelhado, e para sobremesa, uma refeição de quatro pratos com bolinhos de bacalhau, salada de legumes, como prato principal uma refeição de quatro pratos, e para sobremesa um pedaço de bolo de chocolate, e assim sucessivamente até que a refeição esteja completa.

Um procedimento recursivo deve completar cada um de seus passos. Mesmo se uma nova chamada é feita, cada execução deve passar por cada um dos passos restantes. O que isso quer dizer é que, mesmo a salada sendo ela própria uma refeição inteira de quatro pratos, você ainda deverá comer o prato principal e a sobremesa.

Humor recursivo

Uma piada comum de nerd (por exemplo, [1]) é a seguinte “definição” de recursão.

Recursão
Ver "Recursividade".

Isso é uma paródia às referências encontradas em dicionários, que em alguns casos podem levar a definições circulares. Toda piada tem um elemento de sabedoria e também um elemento de mal-entendido. Esse é também o segundo menor exemplo de definição errônea de recursão de um objeto: o erro começa pela ausência de uma condição de parada (ou falta de um estado inicial, se visto por outro ponto de vista). Iniciantes em recursão ficam frequentemente confusos pela sua aparente circularidade, até que eles compreendem que a condição de término é fundamental. Uma versão mais correta seria:

Recursão
Se você ainda não entendeu; Ver: "Recursividade".

Outros exemplos são os acrônimos recursivos, tais como GNU, PHP ou OPO (Dilbert; "O Projeto OPO").

Outra forma de humor recursivo é frequentemente encontrada em filmes e animações, tal como este exemplo [2].

Recursão na matemática

O triângulo de Sierpinski —uma recursão fechada de triângulos formando uma reticulada geométrica.

Conjuntos definidos recursivamente

Um exemplo de conjunto definido recursivamente é dado pelos números naturais:

0 está em ;
Se n está em , então n + 1 está em .
O conjunto dos números naturais é o menor conjunto satisfazendo as condições acima.

Outro exemplo interessante é o conjunto das proposições verdadeiras alcançáveis em um sistema axiomático.

  • Se uma proposição é um axioma, ela é uma proposição verdadeira alcançável.
  • Se uma proposição pode ser obtida de proposições verdadeiras alcançáveis por meio de regras de inferência, ela é uma proposição verdadeira alcançável.
  • O conjunto das proposições verdadeiras alcançáveis é o menor conjunto de proposições verdadeiras satisfazendo estas condições.

Esse conjunto é chamado 'proposições verdadeiras alcançáveis' porque: em aproximações não-construtivas aos fundamentos da matemática, o conjunto das proposições verdadeiras é maior que o conjunto recursivamente construído a partir de axiomas e regras de inferência. Ver também teorema da incompletude de Gödel.

(Note que determinar se um certo objeto está ou não em um conjunto definido recursivamente não é uma tarefa algorítmica.)

Recursão funcional

Uma função pode ser parcialmente definida em termos de si mesma. Um exemplo conhecido é a Sequência de Fibonacci: F(n) = F(n − 1) + F(n − 2). Para que tal definição seja útil, ela deve convergir para valores que não sejam recursivamente definidos, nesse caso F(0) = 0 e F(1) = 1.

Uma função recursiva famosa é a função de Ackermann que, ao contrário da sequência de Fibonacci, é bem difícil de ser expressa sem o uso da recursão.

Demonstrações recursivas

A maneira padrão de se definir novos sistemas de matemática ou lógica é definindo objetos (tais como “verdadeiro” e “falso”, ou “todos os números naturais”), e então definindo operações sobre eles. Esses são os casos base. Após isso, todas as computações válidas no sistema são definidas com o uso de regras. Desta forma, se todos os casos base e regras se demonstrarem calculáveis, então qualquer sistema matemático pode ser também calculado.

Isso pode parecer pouco interessante, mas esse tipo de demonstração é a forma usual de se provar se um cálculo é impossível. Isso pode economizar um bom tempo. Por exemplo, esse procedimento era usado para provar que a área de um círculo não é uma simples razão de seu diâmetro, e que nenhum ângulo pode ser triseccionado com régua e compasso – ambos enigmas que fascinaram os antigos.

Recursão em ciência da computação

Um método comum de simplificação é dividir o problema em subproblemas do mesmo tipo. Como técnica de programação, este método é conhecido como dividir e conquistar e é a chave para a construção de muitos algoritmos importantes, bem como uma parte fundamental da programação dinâmica.

A recursão na programação é bem exemplificada quando uma função é definida em termos de si mesma. Um exemplo da aplicação da recursão são os parsers (analisadores gramaticais) para linguagens de programação. Uma grande vantagem da recursão é que um conjunto infinito de sentenças possíveis, designs ou outros dados podem ser definidos, analisados ou produzidos por um programa de computador finito.

Relações de recorrência são equações que definem uma ou mais sequências recursivamente. Alguns tipos específicos de relações de recorrência podem ser “resolvidos” para que se obtenha uma definição não-recursiva.

Um exemplo clássico de recursão é a definição da função fatorial, dada aqui em pseudocódigo:

função fatorial(n)
{
  se (n <= 1)
    retorne 1;
  senão
    retorne n * fatorial(n-1);
}

A função chama a si mesma recursivamente em uma versão menor da entrada (n - 1) e multiplica o resultado da chamada por n, até que alcance o caso base, de modo análogo à definição matemática de fatorial.

Um exemplo de algoritmo recursivo é o procedimento que “processa” (faz alguma coisa com) todos os nós de uma árvore:

procedimento ProcessarArvore(no)
{
  ProcessarNo(no);    // realiza a operação específica com o nó primeiramente fornecido
  paracada no_filho de no faça ProcessarArvore(no_filho);
}

Para processar a árvore completa, o procedimento é chamado com o nó raiz representando o parâmetro inicial da árvore. O procedimento chama a si mesmo recursivamente para todos os nós filhos do nó fornecido (i.e. sub-árvores da árvore inicial), até alcançar o caso base que é o nó que não possui nenhum nó filho (i.e. árvore sem galhos, usualmente chamada “folha”).

A árvore por si só pode ser definida recursivamente (e então destinada a processos recursivos) como segue:

estrutura no
{
  no_filho : listar<no>;
  ...
}
estrutura arvore
{
  raiz : no;
  ...
}

A árvore é representada por seu nó raiz apresentando uma lista de nós filhos. Cada nó filho por sua vez tem sua própria lista de nós filhos (assim como o nó raiz de uma sub-árvore). A "folha" que não possuir uma lista de nós filhos será o caso base de no.

O teorema da recursão

Na teoria dos conjuntos, este é um teorema que garante que uma função definida recursivamente irá existir. Dado um conjunto , um elemento de e uma função , o teorema indica que há uma única função (onde denota o conjunto dos números naturais) tal que:

para qualquer número natural .

Demonstração de unicidade

Pegue duas funções e no domínio e co-domínio tal que:

onde é um elemento de . Queremos provar . Sabemos que duas funções são iguais se elas:

i. pertencem ao mesmo domínio/co-domínio;
ii. tem o mesmo gráfico.
i. Feito!
ii. Indução matemática: para todo em , ? (Chamaremos essa condição de :
1. se e apenas se se e apenas se . Feito!
2. Seja um elemento de . Assumindo que existe, queremos mostrar que existe também, o que é fácil visto que: . Feito!

Demonstração de existência

  • Ver Hungerford, "Algebra", primeiro capítulo na teoria dos conjuntos.

Ver também

Recursividade (ciência da computação)

Ligações externas

Wikcionário
Wikcionário
O Wikcionário tem o verbete recursividade.

Referências

  1. «Introduction to Recursion». GeeksforGeeks (em inglês). 11 de janeiro de 2017. Consultado em 17 de julho de 2024 

Read other articles:

Scottish historian, professor and principal of the Free Church College, Glasgow T. M. Lindsay. Thomas Martin Lindsay FRSE (1843–1914) was a Scottish historian, professor and principal of the Free Church College, Glasgow. He wrote chiefly on church history, his major works including Luther and the German Reformation (1900), and A History of the Reformation (1906–1907). Life He was born on 18 October 1843 in Lesmahagow[1] in Lanarkshire, the eldest son of Rev. Alexander Lindsay, and...

 

  لمعانٍ أخرى، طالع شون تشن (توضيح). شون تشن   معلومات شخصية الميلاد 3 أكتوبر 1949 (74 سنة)  تايبيه  مواطنة تايوان  مناصب نائب رئيس جمهورية الصين   في المنصب17 مايو 2010  – 6 فبراير 2012  إريك تشو    رئيس وزراء جمهورية الصين   في المنصب6 فبراير 2012  – 18 فبرا�...

 

Australian professional ten-pin bowler Jason BelmonteAMBelmonte during the 2019 PBA World ChampionshipPersonal informationNickname(s)BelmoBorn (1983-07-29) 29 July 1983 (age 40)Orange, New South Wales, AustraliaYears active2000–presentHeight1.78 m (5 ft 10 in)Spouse(s)Kimberly ShapterChildren4SportCountryAustraliaSportTen-pin bowlingLeaguePBA, WBTTurned pro2008Achievements and titlesWorld finals1 European Bowling Tour1 World Tenpin Masters1 WBT1 AMF World CupNationa...

Artikel ini adalah bagian dari seriPembagian administratifIndonesia Tingkat I Provinsi Daerah istimewa Daerah khusus Tingkat II Kabupaten Kota Kabupaten administrasi Kota administrasi Tingkat III Kecamatan Distrik Kapanewon Kemantren Tingkat IV Kelurahan Desa Dusun (Bungo) Gampong Kute Kalurahan Kampung Kalimantan Timur Lampung Papua Riau Lembang Nagari Nagori Negeri Maluku Maluku Tengah Negeri administratif Pekon Tiyuh Lain-lain Antara III dan IV Mukim Di bawah IV Banjar Bori Pedukuhan Dusun...

 

Parque Jurásico Réplica de la entrada a Jurassic Park en Universal Studios Hollywood (1996-2018).Ficha técnicaDirección Steven SpielbergProducción Kathleen KennedyGerald R. MolenSteven SpielbergGuion Michael CrichtonDavid KoeppBasada en Parque Jurásico de Michael CrichtonMúsica John WilliamsFotografía Dean CundeyMontaje Michael KahnEfectos especiales Stan WinstonDennis MurenPhil TippettMichael LantieriProtagonistas Sam NeillLaura DernJeff GoldblumRichard AttenboroughBob PeckMartin Fer...

 

Coordenadas: 46° 42' N 1° 7' E Douadic   Comuna francesa    Localização DouadicLocalização de Douadic na França Coordenadas 46° 42' N 1° 7' E País  França Região Centro-Vale do Loire Departamento Indre Características geográficas Área total 44,18 km² População total (2018) [1] 457 hab. Densidade 10,3 hab./km² Código Postal 36300 Código INSEE 36066 Douadic é uma comuna francesa na região administrativa do Centro, no...

American election For related races, see 2020 United States gubernatorial elections. 2020 Montana gubernatorial election ← 2016 November 3, 2020 2024 → Turnout81.33%6.89[1]   Nominee Greg Gianforte Mike Cooney Party Republican Democratic Running mate Kristen Juras Casey Schreiner Popular vote 328,548 250,860 Percentage 54.4% 41.6% County results Precinct resultsGianforte:      40–50%      50–60%...

 

Turkish high-speed railway line Ankara–Sivas high-speed railwayA viaduct east of Kırıkkale.OverviewStatusIn operationOwnerTurkish State RailwaysLocaleCentral AnatoliaTerminiAnkara YHT station, AnkaraSivas station, SivasSivas YHT station, Sivas (Future)ServiceTypeHigh-speed railSystemTurkish State RailwaysOperator(s)TCDD TaşımacılıkDepot(s)EtimesgutSivasHistoryOpenedTrial run as an evacuation service: 15 February 2023 (Sivas-Kırıkkale) Scheduled operations:[1]26 April 2023Tec...

 

National Conservation Area McInnis Canyons National Conservation AreaIUCN category V (protected landscape/seascape)McInnis Canyons National Conservation Area sign close to Grand JunctionLocationMesa County, Colorado / Grand County, Utah, USANearest cityGrand JunctionCoordinates39°06′19″N 108°55′50″W / 39.10526°N 108.93066°W / 39.10526; -108.93066Area123,400 acres (499 km2)Established2000Governing bodyU.S. Bureau of Land Managementwww.blm.gov/...

Ini adalah nama Korea; marganya adalah Jo. Jo Woo-riWoo-ri pada Oktober 2018Lahir29 Maret 1992 (umur 31) Korea SelatanPekerjaanAktrisTahun aktif2011-sekarang Nama KoreaHangul조우리 Alih AksaraJo U-riMcCune–ReischauerCho U-ri Jo Woo-ri (lahir 29 Maret 1992) adalah aktris asal Korea Selatan. Ia membintangi beberapa serial televisi seperti Medical Top Team (2013), Modern Farmer (2014), A Daughter Just Like You (2015) Gangnam Beauty dan Descendants of the Sun (2016).[1]...

 

Wappen der Pilgram (Österreich) Die Pilgram waren ein österreichisches Adelsgeschlecht, das mit den bairischen Pilgram nahe verwandt war. Inhaltsverzeichnis 1 Geschichte 2 Persönlichkeiten 3 Wappen 4 Literatur 5 Weblinks Geschichte Der Stammvater dieser beiden Familien war Michael Pilgram (* um 1652, † 6. Juli 1730) aus Feldkirchen in Kärnten. Sein ältester Sohn (Johann) Jakob (* 1689) ging nach München und war als Handelsmann erfolgreich. Der vierte Sohn Michaels war Franz Anton Pilg...

 

Cet armorial peut être amélioré car il comporte les défauts suivants : quelques blasons ne sont pas référencés. Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations du Projet Blasons. Cette page dresse l'ensemble des armoiries (figures et blasonnements) connues des communes du Gers disposant à ce jour d'un blason. Sur les autres projets Wikimedia : Armorial des communes du Gers, sur Wikimedia Commons Sommaire : Haut - A B ...

Mammalian protein found in Homo sapiens MYOTAvailable structuresPDBOrtholog search: PDBe RCSB List of PDB id codes2KDG, 2KKQIdentifiersAliasesMYOT, LGMD1, LGMD1A, MFM3, TTID, TTOD, myotilinExternal IDsOMIM: 604103 MGI: 1889800 HomoloGene: 4942 GeneCards: MYOT Gene location (Human)Chr.Chromosome 5 (human)[1]Band5q31.2Start137,867,858 bp[1]End137,887,851 bp[1]Gene location (Mouse)Chr.Chromosome 18 (mouse)[2]Band18|18 B3Start44,467,141 bp[2]End44,488,...

 

Pertanian Umum Agribisnis Agroindustri Agronomi Ilmu pertanian Jelajah bebas Kebijakan pertanian Lahan usaha tani Mekanisasi pertanian Menteri Pertanian Perguruan tinggi pertanian Perguruan tinggi pertanian di Indonesia Permakultur Pertanian bebas ternak Pertanian berkelanjutan Pertanian ekstensif Pertanian intensif Pertanian organik Pertanian urban Peternakan Peternakan pabrik Wanatani Sejarah Sejarah pertanian Sejarah pertanian organik Revolusi pertanian Arab Revolusi pertanian Inggris Revo...

 

SharonAn early postcard of Sharon stationGeneral informationLocation396 Sharon Station Road, Amenia, New York 12501Coordinates41°53′00″N 73°31′11″W / 41.8834°N 73.5196°W / 41.8834; -73.5196Tracks1Other informationFare zone12HistoryOpenedMid-1870sClosedMarch 20, 1972 (passenger service);[1]March 27, 1980 (freight)Former services Preceding station New York Central Railroad Following station Ameniatoward New York Harlem Division Coleman'stoward Chatham...

Process of word formation by combining morphemes of singular meaning For biological agglutination, see Agglutination (biology). For the music festival, see Agglutination Metal Festival. The middle sign is in Hungarian, which agglutinates extensively. (The top and bottom signs are in Romanian and German, respectively, both inflecting languages.) The English translation is Ministry of Food and Agriculture: Satu Mare County Directorate General of Food and Agriculture. In linguistics, agglutinati...

 

School in Nigeria This article is an orphan, as no other articles link to it. Please introduce links to this page from related articles; try the Find link tool for suggestions. (March 2017) Uyo High School is a government secondary school in the city of Uyo, Akwa Ibom State. It is one of the notable oldest secondary schools in Akwa Ibom state.[weasel words][1] In 2018, the school had more than 5000 students.[2][3] References ^ Tell. Tell Communications Lim...

 

Defunct Canadian marketing board 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) The neutrality of this article is disputed. Relevant discussion may be found on the talk page. Please do not remove this message until conditions to do so are met. (October 2015) (Learn how and when to remove this template message) This article's lead section may be too long. Please read the length guidelines...

1940-1942 Dell Comics superhero Comics character PhantasmoPhantasmo on the cover of his first appearance, The Funnies #45 (July 1940)Publication informationPublisherDell ComicsFirst appearanceThe Funnies #45 (July 1940)Created byE.C. StonerIn-story informationAlter egoPhil Anson, Ted BartAbilitiesSeparates spirit from body, giving him super-strength, flight, invisibility, super-growth Phantasmo, Master of the World is a fictional superhero who appeared in Dell Comics' The Funnies from 1940 to...

 

Region or constituency of the Scottish Parliament Not to be confused with Coatbridge and Chryston (UK Parliament constituency). Coatbridge and ChrystonBurgh constituencyfor the Scottish ParliamentCoatbridge and Chryston shown within the Central Scotland electoral region and the region shown within ScotlandPopulation72,162 (2019)[1]Current constituencyCreated1999PartyScottish National PartyMSPFulton MacGregorCouncil areaNorth Lanarkshire Coatbridge and Chryston (Gaelic: Coatbridge agus...

 
Kembali kehalaman sebelumnya