Grande parte do progresso em um nonograma vem da resolução de uma linha: você escolhe uma linha ou coluna, determina quais arranjos satisfazem suas pistas e células conhecidas e marca os estados que são forçados dentro daquela linha.
Em alguns quebra-cabeças difíceis, chega um momento em que cada linha individual ainda possui vários padrões válidos, mas esses padrões não podem ser escolhidos de forma independente. Um arranjo legal em uma linha pode tornar várias colunas impossíveis ao mesmo tempo. Um conjunto de colocações pode exigir mais capacidade de preenchimento do que uma região vizinha consegue suportar. Dois casos alternativos podem diferir localmente e, ainda assim, forçar a mesma consequência em outro ponto.
Esse é o domínio do raciocínio multilinha.
O que torna o raciocínio multilinha diferente?
Uma dedução de uma única linha pergunta:
O que precisa ser verdadeiro nesta linha ou coluna?
Uma dedução multilinha pergunta:
Quais combinações de estados de linha, legais separadamente, conseguem realmente coexistir na mesma grade?
A segunda pergunta é mais forte porque cada célula conecta uma linha a uma coluna. Os padrões legais das duas direções precisam ser compatíveis simultaneamente.
Nenhuma regra nova é introduzida. Continuamos usando pistas, ordem dos blocos, separadores, preenchimentos e vazios, mas analisamos uma parte maior do sistema de restrições de uma vez.
Primeiro alcance um ponto fixo real de resolução por linhas
Não pule para lógica global apenas porque o quebra-cabeça parece difícil.
Antes deste nível, esgote:
- encaixe exato e linhas vazias;
- sobreposição e redução de folga;
- blocos concluídos, extensão e alcance;
- eliminação de intervalos e atribuição a segmentos;
- limites mais cedo/mais tarde de colocação;
- padrões válidos de linha;
- cruzamento e propagação em todas as linhas alteradas.
Se uma única linha ainda consegue forçar uma célula, use essa prova mais simples. Lógica multilinha é útil quando todas as linhas relevantes continuam localmente compatíveis, mas a grade global é mais restritiva do que qualquer uma delas isoladamente.
1. Raciocínio de fronteira em várias linhas
Algumas comunidades avançadas usam edge logic ou boundary logic para uma técnica diferente do efeito de borda de uma única linha que a VeyraPlay chama de ancoragem na borda.
Na lógica multilinha de fronteira, você começa com um bloco perto da borda externa e estuda quais consequências suas colocações possíveis teriam nas linhas perpendiculares imediatamente internas.
O fluxo é:
- escolha um bloco de borda cujas primeiras colocações sejam muito restritas;
- considere uma colocação candidata ou uma pequena família delas;
- transfira os estados resultantes para as linhas cruzadas;
- verifique se essas linhas ainda podem satisfazer suas pistas em conjunto;
- rejeite colocações de borda cujas consequências tornem impossível a faixa vizinha;
- conserve apenas células ou intervalos que sobrevivem a todas as verificações globais.
A diferença importante é a escala.
Ancoragem na borda (G-027) permanece dentro de uma única linha ou coluna: o limite físico restringe o alcance legal de um bloco identificado.
Lógica multilinha de fronteira usa as consequências dessa colocação sobre várias linhas cruzadas. Uma posição pode ser perfeitamente legal dentro da própria linha e ainda assim impossível na grade completa.
Um exemplo esquemático de fronteira
Imagine que a primeira pista de uma linha superior possa ocupar as colunas 2–5 ou 3–6. As duas posições satisfazem essa linha.
Agora examine as quatro colunas abaixo dessas células.
Se a colocação 2–5 obrigasse três dessas colunas a continuar blocos preenchidos pelas duas linhas seguintes, mas essas linhas só tivessem capacidade de pistas para dois desses preenchimentos na região, aquela colocação não poderia fazer parte de uma solução completa.
A linha isolada não tinha problema algum. A incompatibilidade aparece quando você trata o bloco de borda e várias linhas/colunas cruzadas como um único sistema.
2. Consequências compartilhadas em raciocínio de dois casos
Às vezes uma proposição não resolvida possui dois casos exaustivos:
- caso A: uma célula está preenchida;
- caso B: a mesma célula está vazia.
Talvez você não consiga provar qual deles é o correto. Mas se os dois casos forçam outra célula ao mesmo estado, essa consequência compartilhada é incondicional.
A forma lógica é simples:
- se A, então C está preenchida;
- se não A, C também está preenchida;
- portanto, C está preenchida independentemente de A.
A mesma ideia pode ser aplicada a uma colocação de bloco, desde que os casos considerados sejam realmente exaustivos.
Por que isso não é raciocínio por contradição comum
Contradição normalmente tenta demonstrar que um caso é impossível e, com isso, confirmar o oposto.
A análise de consequência compartilhada pode avançar mesmo quando os dois casos continuam possíveis. Você mantém apenas aquilo em que eles concordam e descarta os estados temporários específicos de cada ramificação.
Mantenha os casos exaustivos
A conclusão só é válida se as ramificações cobrirem todas as possibilidades da proposição.
Para uma célula binária, preenchida/vazia é exaustivo. Para um bloco com quatro colocações legais, testar somente a mais à esquerda e a mais à direita não basta, a menos que as duas posições intermediárias já tenham sido descartadas.
Uma prova em dois casos é tão forte quanto a prova de que existem realmente apenas esses dois casos.
3. Contagem regional e summing
As pistas dizem não apenas onde os blocos podem ficar, mas também quantas células preenchidas precisam existir.
Em uma linha completa, o total de preenchimentos é a soma das pistas. O mesmo vale para uma coluna. Na grade inteira, a soma das pistas das linhas precisa ser igual à soma das pistas das colunas porque ambas contam as mesmas células preenchidas.
Normalmente isso é apenas uma verificação de consistência. Em uma região muito restrita, a contagem pode virar uma dedução.
Suponha que uma faixa retangular contenha várias células desconhecidas. Pelo lado das linhas, as pistas restantes provam que exatamente sete preenchimentos ainda precisam cair dentro dessa faixa. Pelo lado das colunas, as colunas cruzadas conseguem comportar no máximo sete preenchimentos restantes ali.
A região está saturada: as sete unidades de capacidade disponíveis precisam ser usadas dentro dela.
Isso pode implicar que:
- uma coluna não possa gastar um de seus preenchimentos restantes fora da região;
- uma colocação alternativa que reduziria a região a seis células disponíveis seja impossível;
- uma linha que entra na região precise usar um bloco específico ali;
- células fora de uma faixa saturada fiquem vazias porque todos os preenchimentos necessários já foram contabilizados.
Explicações de comunidade às vezes chamam esse estilo de argumento de summing. A VeyraPlay usa o termo mais amplo contagem regional porque a prova trata de ocupação necessária e capacidade, e não simplesmente de somar números de pista.
A contagem precisa respeitar a estrutura dos blocos
Um total bruto de preenchimentos não é suficiente sozinho.
Se duas regiões conseguem receber cinco células preenchidas cada, isso não significa que uma pista 5 possa ser movida livremente entre elas. O bloco ainda precisa respeitar:
- ordem das pistas;
- continuidade;
- separadores obrigatórios;
- estados preenchido/X atuais;
- colocação dos blocos anteriores e posteriores.
Use a contagem para eliminar distribuições globalmente impossíveis e depois volte à lógica normal de blocos para determinar células exatas.
4. Saturação e capacidade em uma faixa
O raciocínio regional fica especialmente poderoso quando um conjunto de linhas não possui capacidade sobrando.
Um modelo mental útil é:
- demanda: quantas células preenchidas ou blocos precisam passar pela região;
- capacidade: quantos preenchimentos as linhas cruzadas ainda conseguem suportar ali.
Se demanda = capacidade, cada unidade restante de capacidade está comprometida.
Se a demanda supera a capacidade, o arranjo assumido é impossível.
Se a capacidade é maior que a demanda, a contagem sozinha pode não decidir células exatas, mas ainda pode restringir quais blocos conseguem entrar na região.
Esse é o equivalente multilinha da folga de uma única linha: quanto menos espaço sobra, mais fortes ficam as restrições.
5. Totais globais de pistas como teste de consistência
Em qualquer nonograma monocromático válido:
soma de todos os valores das pistas das linhas = soma de todos os valores das pistas das colunas.
Se esses totais forem diferentes, o conjunto de pistas não pode descrever nenhuma grade válida de preenchido/vazio.
Durante a resolução, você pode aplicar a mesma ideia localmente aos preenchimentos restantes, desde que conte cuidadosamente as células já confirmadas e não conte duas vezes uma mesma célula a partir das duas direções.
Isso costuma ser mais útil para verificar uma construção ou raciocinar sobre uma região bem definida do que na resolução cotidiana de iniciantes, mas é um invariante valioso de compreender.
6. Simetria é condicional, não uma pista da imagem escondida
Alguns conjuntos de pistas são simétricos por reflexão ou rotação.
Se, além disso, você sabe que o quebra-cabeça possui exatamente uma solução, essa solução precisa herdar toda simetria do sistema completo de pistas. Caso contrário, refletir uma solução assimétrica produziria uma segunda solução diferente com as mesmas pistas.
A condição de unicidade é essencial.
Um conjunto simétrico de pistas pode possuir duas soluções assimétricas que sejam imagens espelhadas. Sem conhecimento independente de unicidade, escolher a imagem “mais bonita” ou mais simétrica não é lógica válida.
Por isso a VeyraPlay não ensina “a imagem provavelmente é simétrica” como método de resolução. A simetria só se torna uma restrição global legítima quando a unicidade faz parte da informação que você pode usar.
7. Eliminação multilinha sem se comprometer com uma ramificação
Raciocínio avançado costuma funcionar melhor eliminando combinações do que escolhendo diretamente uma resposta.
Suponha que a linha A possua três padrões válidos e a coluna B possua quatro. Você pode descobrir que:
- o padrão A1 entra em conflito com todo estado legal de B;
- A2 é compatível com B1 e B3;
- A3 é compatível com B2 e B4.
Você pode excluir A1 sem escolher entre A2 e A3.
Se A2 e A3 então concordarem sobre outra célula, essa célula é forçada.
Essa visão escala naturalmente da resolução manual para programação por restrições: conjuntos locais de candidatos são filtrados repetidamente pela compatibilidade com restrições vizinhas.
8. Raciocínio multilinha versus contradição
As duas ideias se sobrepõem, mas não são idênticas.
Raciocínio multilinha
- compara várias restrições simultaneamente;
- pode eliminar colocações sem fazer uma suposição provisória;
- pode usar casos exaustivos e manter apenas consequências compartilhadas;
- pode usar argumentos de contagem ou capacidade sobre uma região.
Raciocínio por contradição
- começa com uma suposição provisória explícita;
- propaga suas consequências;
- prova que a hipótese é impossível ao chegar a uma contradição dura;
- conclui que a alternativa precisa ser verdadeira.
Um argumento multilinha pode conter uma contradição dentro dele, mas a distinção editorial útil é análise de compatibilidade global versus raciocínio de assumir e refutar uma ramificação.
Fluxo prático de raciocínio multilinha
Quando a propagação normal chegar a um ponto fixo verdadeiro:
- identifique uma fronteira, região ou par de linhas muito restrito;
- anote o pequeno conjunto de alternativas restantes;
- garanta que essas alternativas sejam exaustivas;
- propague cada alternativa apenas até onde for necessário para comparar consequências;
- rejeite combinações que excedam a capacidade regional ou tornem linhas cruzadas impossíveis;
- registre qualquer estado compartilhado por todos os casos sobreviventes;
- descarte marcas temporárias específicas de cada caso;
- volte imediatamente à propagação normal depois de cada célula comprovada.
O último passo importa. Uma única dedução global costuma criar vários encaixes exatos, sobreposições ou blocos concluídos fáceis, então continuar no “modo avançado” por mais tempo que o necessário desperdiça esforço.
Quando usar contagem regional?
Procure esse tipo de raciocínio quando:
- uma faixa estreita contém muitos blocos obrigatórios e pouco espaço sobrando;
- várias pistas de borda competem pelas mesmas linhas ou colunas;
- linhas individuais possuem vários padrões, mas seus totais combinados são muito restritos;
- um quebra-cabeça abstrato possui pistas repetitivas com colocações que se sobrepõem de forma estruturada.
Ele é menos útil quando a grade ainda contém deduções óbvias de uma única linha ou quando a região possui muita capacidade não utilizada.
Erros comuns
Chamar toda dedução de borda de “edge logic”
A terminologia varia. Use ancoragem na borda para a técnica de uma única linha da G-027 e defina edge/boundary logic explicitamente ao falar de consequências multilinha.
Comparar apenas dois casos convenientes
Two-way logic exige alternativas exaustivas. Não ignore uma terceira colocação legal só porque ela complica a prova.
Usar totais sem restrições de colocação
Cinco preenchimentos necessários não são intercambiáveis se pertencem a blocos ordenados com separadores.
Assumir simetria pela imagem que está surgindo
Simetria não é evidência, a menos que o sistema de pistas tenha essa simetria e a unicidade esteja garantida independentemente.
Manter marcas específicas de uma ramificação
Se um caso sobrevive mas não foi provado, desfaça seus estados temporários. Apenas consequências compartilhadas ou demonstradas independentemente pertencem ao tabuleiro real.
Esquecer de voltar à resolução de linha
Depois de uma dedução global, o quebra-cabeça pode voltar a técnicas simples como sobreposição, blocos concluídos ou encaixe exato. Propague antes de procurar outro argumento sofisticado.
Como isso se conecta à resolução por computador
Um solver pode modelar cada linha e coluna como uma restrição e remover repetidamente estados incompatíveis. Abordagens gerais de programação por restrições, SAT, programação inteira ou busca podem impor globalmente muitas relações difíceis de acompanhar manualmente.
Técnicas humanas multilinha são valiosas porque comprimem parte dessa consistência global em provas reconhecíveis: uma região saturada, uma colocação de borda impossível ou uma consequência compartilhada pelos casos.
Elas não fazem desaparecer a dificuldade computacional de nonogramas arbitrários, mas explicam por que uma pessoa às vezes consegue resolver um quebra-cabeça que derrota um solver limitado à lógica simples de linhas.
O que aprender depois
Se a compatibilidade multilinha ainda deixar várias possibilidades, Raciocínio por contradição mostra como testar uma suposição controlada e rejeitá-la apenas quando a propagação prova uma impossibilidade dura.
Do lado teórico, Soluções únicas e nonogramas ambíguos explica por que a unicidade importa em argumentos avançados como simetria.
FAQ
Raciocínio multilinha é necessário na maioria dos nonogramas?
Não. Uma boa resolução de uma linha, somada à propagação linha-coluna, resolve grande parte dos quebra-cabeças normais desenhados à mão. Raciocínio multilinha é mais relevante quando cada linha individual permanece localmente ambígua em um ponto fixo.
Edge logic é a mesma coisa que ancoragem na borda?
Não de forma consistente entre as fontes. A VeyraPlay usa ancoragem na borda para um bloco de uma única linha restrito pelo limite físico. Algumas comunidades usam edge logic/boundary logic para a análise multilinha descrita nesta página.
Two-way logic é a mesma coisa que chute?
Não, desde que os casos sejam exaustivos e você mantenha apenas consequências provadas em todos eles ou rejeite um caso por uma contradição explícita. Comprometer-se com uma ramificação não provada seria chute/busca.
A contagem sozinha pode revelar a imagem exata?
Normalmente não. A contagem é mais forte como ferramenta de eliminação: prova que certas distribuições ou colocações não podem coexistir. Células exatas costumam surgir depois que essa conclusão volta à lógica normal de linha.
Posso sempre usar simetria em um quebra-cabeça simétrico?
Não. Pistas simétricas não garantem uma solução simétrica quando várias soluções são possíveis. Simetria só é logicamente segura quando a unicidade está garantida de forma independente como parte da informação do problema.