Você está na página 1de 10

UniversidadeFederaldoRioGrandedoSul InstitutodeInformtica

ProblemadoLadrilhamento
(WangTileProblem)

TrabalhodeGraduao, TeoriadaComputao

Prof.DrTiarajAsmuzDiverio Orientador

Alunos:PedroMartinsCosta191665 VinciusLindorferBohrz207272 Grupo:8 Turma:A

Disciplina:INF05501TeoriadaComputao PortoAlegre2013

Problemtica
OProblemadoLadrilhamento(WangTileProblem)foipropostoporHaoWangem1961.Noproblema dadocomoentradaumconjuntoTcomnladrilhos.Cadaladrilhopossui4cores,umaparacadalado.O problemaconsisteemposicionarladrilhosnumamatrizmxm,paraqualquermondemuminteiro positivo.Spossvelposicionarumladrilhoaoladodooutroseascoresdaslateraisqueficaroladoa ladoforemiguais.Omesmovaleparaoladosuperioreinferiordosladrilhos.Vamostomarcomo exemplooconjuntodeladrilhosabaixo:

Comesseconjuntodeladrilhos,podemospreencherumamatriz3x3conformesegueabaixo:

Dadooproblema,surgiuaseguinteconjectura: "Umconjuntofinitodeladrilhossolucionvelseesomenteseexisteumretngulocclicoentreos ladrilhosemoutraspalavras,umconjuntofinitodeladrilhossolucionvelseesomenteseeletemao menosumasoluoperidica."(Afinitesetofplatesissolvableifandonlyifthereexistsacyclicrectangle

oftheplatesorinotherwords,afinitesetofplatesissolvableifandonlyifithasatleastoneperiodic solution.)

Podemosdizerqueaconjecturaafirmaquejamaisexistirumconjuntodeladrilhosaperidicoque preenchequalquermatrizmxmondemuminteiropositivo.

ProblemticaII
Tendoconhecimentodaregraenunciadaanteriormente,quesomentesladrilhospertencentesaum conjuntolimitadodeladrilhosspodemserpostosumdoladodooutrosesuasbordaspossuiremas mesmascores,surgeaquesto: Podemosdealgumaformaladrilharumambientegenrico(detamanhovarivel),usandosomenteos ladrilhosdesseconjuntolimitadoeobedecendoarestriodecores,semdeixarespaoalgumsem ladrilhar? Assimsendo,podemosdealgumaformarespondersimounoparaqualquerentradapossvel deladrilhos(ecoresrespectivamente)?Paraesseproblemasersolucionvel,necessitariaexistirum algortimoparaesseproblemaquesejacapazde,dadoumconjuntoTaleatrio,responderessapergunta emumtempofinitoedemaneiracorreta.

DemonstraoporReduoaoProblemadaParada
Demonstrar que esse problema solucionvel seria de alguma forma mecanizar um meio de responder a pergunta se dado um conjunto M de azulejos, possvel ounoladrilharumcertoambiente. Porm, essa afirmao de que para qualquer conjunto M de azulejos afirmar se existe ou no existe como ladrilhar o espao em questo muito abstrata, uma vez esse conjunto irrestrito,ouseja,huma infinidade de variaes (seja em nmero de ladrilhos, como em composies de cores), alm de que em muitoscasos,oprocessamentoseriainfindveloufinalizariadeformaerrada. Assim, para podermos responder a questodoladrilhamento,deveramosconseguiralgoritimizar um meio de sempre responder sim ou no dada uma entrada vlida no conjunto de ladrilhos M.. Porm, no existe como se construir tal algoritmo, apesar de ser possvel para um certo conjunto pr estabelecido responder tal questo, no h como mapear todas as entradas possveis de conjuntos , ou seja,recamossobreoProblemadaParada: Dada uma mquina M qualquer e umapalavrawqualquersobreoalfabetodeentrada,existeum algoritmoqueverificaseMpara,aceitandoourejeitando,aoprocessarapalavraw?. Dessa maneira, partimos do pressuposto que para responder a questo do ladrilhamento, necessrio conseguirmos algoritimizar um meio de mapear todos os conjuntos deladrilhospossveis,ou seja, resolver o Problema da Parada.Porm, o problema da parada j foi demonstrado por reduo ao absurdo que equivalenteaoproblemadaAutoAplicao,quenosolucionvel.Assim,analogamente ao problemadaparadaeequivalentementeaoproblemadaautoaplicao,oproblemadoladrilhamento umproblemaparcialmentesolucionvel,decarterindecidvel,sendoassim,nosolucionvel. RefernciaadefiniodoProblemadaParadapresentenolivroTeoriadaComputao:MaquinasUniversaise Computabilidade,3Edio,deTiarajAsmuzDiverioePauloBlauthMenezes
DemonstraodanosolucionabilidadedoproblemadaautoaplicaoestpresentenabibliografiaTeoriada Computao:MaquinasUniversaiseComputabilidade,3Edio,deTiarajAsmuzDiverioePauloBlauthMenezes

DemonstraoporReduoCorrespondnciadePalavras
Para entender melhor como possvel reduzir o problema do ladrilhamento ao problema da correspondncia de palavras, vamos precisar criar uma abstrao. Nas linhas que seguem abaixo, no vamos alterar em absolutamente nada o problema do ladrilhamento, vamos apenas compreender caractersticasdoproblemaemsi,paradepoisfazermosumareduo. Podemos propor que cada cor recebe umaletracomoidentificao,deformaqueduascoresnopodem possuir a mesma letra como identificao. Agora nsvamosmapearcadaladrilhocomosendodoispares deletras,conformerepresentadoaseguir:

v=vermelho b=branco a=azul e=verde

Repare que o par principal composto pelo lado superior doladrilhoconcatenadocomoladodireitodo ladrilho e o par secundrio composto pelo lado esquerdo do ladrilho concatenado com o lado inferior. Nosso objetivo agora vai ser criar um mapa para cada matriz mxm que nosso programa estiver computando. Essemapavaisercomposto deduaspalavras:aprincipaleasecundria.Apalavraprincipal ser composta nica e exclusivamente de concatenaes de pares principais. Vamos ignorar a palavra secundria por um momento. Observe tambm que para uma matriz mxm, cada palavra ser constituda porprecisamente2mletras,vindasdempares.Abaixotemosumexemplodematriz3x3.

Essa matriz composta de 2 tipos de ladrilhos. Um ladrilho possui par principal vb e par secundrio ae, o outro ladrilho possui par principal ea e par secundrio bv. Vamos construir a palavra principal dessamatriz,quedeverpossuir2(3)letras,ouseja18letras.Observeoexemploabaixo:

Apalavraprincipal:vbeavbeavbeavbeavb Agora vamos fazer a palavra secundria, que umpoucomaiscomplexa.Essapalavradever seguiruma srie de regras. Podemos considerar cada uma das palavras como sendo um conjunto de smbolos escritos em uma fita. Vamos considerar a letra i como sendo uma varivel que armazena ndice do prximo espao disponvel na fita da palavra principal. Apenas pares secundrios podem ser usados na composio de palavras secundrias. No modelo abaixo ns vamos utilizar 4 regras para determinar onde cada letra dos pares secundriosserescritanafitasecundria.Aregraaserutilizadadependerda posiodoladrilhamentonamatrizmxm,ondemqualquerinteiropositivo.

Observe o mapa abaixo para entender melhor como a nossa matriz de exemplo ficaria seguindo esse mapeamentoparadeterminarondeposicionarasletrasdecadaparsecundrio.

Comopudemosobservar,asduaspalavrassomuitoparecidas.Reparequeosladosadjacentespossuem nmeros iguais. Outro detalhe importante que essa matriz no nos permite afirmar que o conjunto de ladrilhos peridico, ou seja, ns no podemos encaixar rplicas dela mesma em algum dos lados da matriz original. Agora, vamos observar apenas um pedao dessa matriz. Ser uma matriz 2x2 conforme segueabaixo.

Novamente obtivemos duas palavras que codificam a matriz, porm dessa vez as palavras so idnticas. Esse fato ocorreu porque a matriz que estamos analisando nos permiteafirmarqueoconjunto de ladrilhos que estamos usando peridico, ou seja, podemos replicar a nossa matriz 2x2 indefinidamenteemqualquerumdosladosdamatrizoriginal.Observeamatriz36x36naprximapgina.

Nossa matriz 2x2 seria responsvel por solucionar oproblemacomarespostadesim.Casooconjunto de ladrilhos fosse diferente do que usamos at ento e o programa noconseguisseencontrarumamatriz vlida testandotodasas combinaespossveisparaalgummqualquer,ele solucionariaoproblemacom a resposta de no. Dessa forma, podemos afirmar que o problema solucionvel se e somente se no existir um conjunto aperidico de ladrilhos, ou seja, um conjunto de ladrilhos que permite encontrar matrizes mxm para qualquer m positivo, sem quesejapossvelreplicaralgumadessasmatrizesemumdos seuslados. J demonstramos que cada matriz pode ser codificada em duas palavras. J conclumos que s vamos encontrar palavras iguais quando o conjunto de ladrilhos for peridico. Vale lembrar, que at o presente momento ns no alteramos o problema original, estamos apenas constatando detalhes da abstraoque criamos.Antesdeseguirnossoraciocnio,vamosconheceroproblemadacorrespondnciadepalavras. Imagine dois conjuntos, X e Y. Cada conjunto possui n palavras em uma determinada ordem, conforme segueabaixo.

Utilizando a sequncia 2, 1, 1, 4, 1, 5 ns conseguimos obter duaspalavrasiguaiscomelementosdeXe com elementos de Y.Apalavraformadaseria:aabbabbbabaabbaba.Oproblemadacorrespondnciade palavras verifica se com dois conjuntos X e Y, semelhantes aos dados acima como exemplo, possvel encontrar uma sequncia que forme a mesma palavra para ambos conjuntos. Ns j sabemos que este problemaindecidveleconsequentementenocomputvel.5 Agora vamos demonstrar, que o problema do ladrilhamento pode ser reduzido para uma particularidade do problema da correspondncia de palavras, de forma que ambos resultem sim quando a entrada for vlidaeambosresultemnoquandoaentradaforinvlida.4

Reduo
Se ns pegarmos uma matriz qualquer, que acabou de ser analisada pelo nosso programa, podemos codificla em duas palavras. Quando aspalavrasforemdistintas,existemduas possibilidades,ouamatriz aceita porm no identifica o conjunto de ladrilhos como sendo peridico, ou a matriz no aceita porque no respeita as regras do problema. Para cadamatrizmxmqueforaceita,sejaqualforovalorde m e seja qual for adisposiodos seusladrilhos,haversempreumamaneiradeconverteressamatrizem duas palavras usando a abstrao que criamos anteriormente. Ou seja, uma matriz corresponde a duas palavraseviceversa. Podemos determinar que cada par principal uma subpalavra da palavra principal pertencente ao conjuntoXequecadapar secundrioumasubpalavradapalavrasecundriapertencenteaoconjuntoY. Montar uma matriz mxm na verdade preencher duas fitas com 2m espaos, seguindo regras para preencher esses espaos na fita secundria. A regra no muda ao longo das tentativas para uma mesma matriz, mas a mudana de uma letra (cor) na fita principal, altera outras letras da fita secundria. Cada matriz computada por um programa que tenta resolver o problema do ladrilhamento acaba se transformando em uma particularidade do problema da correspondncia de palavras, porm a grande diferena que a fita tem um tamanho definido. Repare que os problemas so distintos, no estamos afirmando que eles se equivalem,estamosapenasdemonstrandoquepossveltransformaracomputao deumproblemaemparticularidadesdooutro. Agora,considerandoquenstemosqueusarsempreoconjuntoXeoconjuntoYparadeterminarcada umadasmatrizesequeexistempotencialmenteinfinitasmatrizesparaavaliar,nossoproblemado ladrilhamentocomeaatomaroutraformaeaficarsemelhanteaoproblemadacorrespondnciade palavras.nessemomentoqueHaoWangfezumaapostaaoproprquenoseriapossvelmontar infinitasmatrizessemqueumadelasindicassequeoconjuntodeladrilhosperidico,poisagrande diferenadosdoisproblemasatualmenteestnasregrasusadasparaposicionarpalavrasdoconjuntoY. Wangdisse,decertaforma,queasregrasoualgicanamontagemdamatriz,obrigariamaexistnciade palavrasidnticas,casoexistisseminfinitasmatrizes. Acontecequepossvel,analisandoosistemaderegraseaabstraoquefizemosdoproblema, demonstrarquenohimplicaonaexistnciadepalavrasidnticasdadoqualquerconjuntoXeYde entrada.Umamaneiramaissimplesdeabordaressaquestoavaliarqueseexisteumconjuntode ladrilhosparaumamatrizmxmquepodeserposicionadonasextremidadesdamatrizdeformasatisfatria, aomesmotempoemqueeleinviabilizaopreenchimentodamatriz,comotambmpossvelrepetiresse processocomosmesmosladrilhosparaumvalordem+1,nssabemosporinduoquenoaregra deposicionamentodassubpalavrasqueatuacomolimitantenasmatrizesquepodemsergeradas.

Comasconsideraespropostasacimapodemosafirmar,comsegurana,queoproblemado ladrilhamentopodeserreduzidoaoproblemadacorrespondnciadepalavras,poistodaequalquermatriz computadapodeconvertidaemumaparticularidadedoproblemadacorrespondnciasemalterara naturezadoproblema.Podemosdizertambm,queaceitaraconjecturafeitaporHaoWangseriaaceitar quepossvelcomputaroproblemadacorrespondnciadepalavras,masnssabemosqueissono possvel.Dessaforma,temosoproblemadoladrilhamentocomosendonocomputveleindecidvel,o quenoslevaaconclusodequeexisteumconjuntoaperidicodeladrilhos,comoindicadoabaixo.

Observe que no h segmentos de matrizes abaixo que podem ser replicados lado a lado, ou seja, que caracterizamoconjuntodeladrilhosacimacomosendoperidico.

Wang,Hao(1961),"ProvingtheoremsbypatternrecognitionII",BellSystemTechnicalJournal40:142

http://hal.inria.fr/docs/00/26/01/12/PDF/sutica.pdfdemonstraodanosolucionabilidadedoproblemadoladrilhamento maisrecente,acessadoem28denovembrode2013.
5

Demonstraodanosolucionabilidadedoproblemadacorrespondnciadepalavrasestpresentenabibliografia AlgorithmicsTheSpiritofComputing,3Edio,deDavidHareleYishaiFeldman.