Criando todos os inteiros com quatro números 2
(eli.thegreenplace.net)- O quebra-cabeça de formar números usando apenas quatro algarismos 2 se expande de um puzzle das quatro operações para uma brincadeira matemática avançada, dependendo de até onde se ampliam as operações permitidas
- Apenas com frações e as quatro operações, é possível formar de 1 a 6, e ao acrescentar expoentes e fatoriais, também dá para construir números grandes como 18, 28, 256 e 65536
- Se concatenarmos os 2 para formar 22 ou 222, ou usarmos números complexos e valor absoluto, é possível representar de várias formas até números difíceis de obter com cálculos simples
- O 7 é conhecido como um número difícil de formar, mas, se ferramentas como a função gama forem permitidas, ele pode ser obtido diretamente com quatro 2s
- A solução geral de Paul Dirac expressa qualquer número usando radicais aninhados e logaritmos na base 2, ajustando exatamente quatro 2s com a substituição
2 = √(2+2)
Regras básicas para formar números com quatro 2s
- A condição do quebra-cabeça é usar o número 2 exatamente quatro vezes e, sem nenhum outro algarismo, formar o número-alvo apenas com operações matemáticas
- Mesmo só com as quatro operações e frações, números pequenos podem ser feitos com relativa facilidade
1 = (2+2)/(2+2)2 = 2/2 + 2/23 = 2·2 - 2/24 = 2+2+2-25 = 2·2 + 2/26 = 2·2·2 - 2
- Se forem permitidos expoentes e fatoriais, o intervalo de expressões possíveis se amplia bastante
18 = 2^(2^2) + 228 = (2+2)! + 2 + 2256 = (2+2)^(2+2)65536 = 2^(2^(2^2))
- Concatenar os algarismos também é um truque usado com frequência nesse tipo de puzzle
26 = 22 + 2 + 211 = 22 / √(2+2)444 = 222 · 2
- O 7, em especial, é um número difícil de montar, mas, usando a função gama, ele pode ser expresso como
7 = Γ(2) + 2 + 2 + 2 - Na thread do Math StackExchange, há exemplos usando integrais, dízimas periódicas, operadores combinatórios e outros recursos
- Com números complexos e valor absoluto, também surgem expressões como
12 = |2 + 2√-2|²
A solução geral de Dirac
- Paul Dirac encontrou uma solução geral aplicável a qualquer número, e o mecanismo central são os radicais aninhados
- Ao aplicar repetidamente a raiz quadrada a 2, o resultado pode ser reorganizado na forma exponencial da seguinte maneira
√2 = 2^(1/2) = 2^(2^-1)√√2 = 2^(1/4) = 2^(2^-2)√√√2 = 2^(1/8) = 2^(2^-3)
- Se aplicarmos a raiz quadrada n vezes, obtemos a forma
√√...√2 = 2^(2^-n) - Se então tomarmos um logaritmo na base 2, o resultado será
2^-n, e, tomando o logaritmo novamente, obtemos-n - Assim, qualquer n pode ser expresso na forma
n = -log₂(log₂(√√...√2)) - Como a expressão original usa o número 2 apenas três vezes, um dos 2 pode ser substituído por
2 = √(2+2), fazendo com que a fórmula use exatamente quatro 2s - Por exemplo, 7 pode ser expresso com sete raízes quadradas aninhadas, da seguinte forma
7 = -log_{√(2+2)}(log₂(√√√√√√√2)) - O
ndentro da expressão não é um número que entra literalmente na fórmula, mas uma notação auxiliar para contar o número de repetições da raiz quadrada - No fim, o caminho para representar todos os números fica aberto, mas ainda resta a tarefa de escrever corretamente tantos símbolos de raiz quantos forem necessários
1 comentários
Comentários no Hacker News
No momento em que funções são permitidas, parece que se abandona o propósito do jogo
Por exemplo, a função gama é
(n-1)!, então agora seria como formar 7 com quatro 2 e um 1Se dá para esconder números dentro de chamadas de função, fica fácil demais sempre ter sucesso
+,-(binário/unário),×,÷também são funções, e potenciação também é uma função. Então por que elas deveriam ser permitidas?Nesse tipo de quebra-cabeça, sempre pode haver divergência sobre o escopo das funções elementares, mas não vejo necessidade de proibir a raiz quadrada
Quanto à ideia de que a função gama é
(n-1)!, 2 também é, no fim, apenasS(S(0))(https://en.wikipedia.org/wiki/Peano_axioms)A construção de Paul Dirac é difícil de chamar de trivial, e fico curioso se você realmente a considera trivial ou se conhece uma construção mais simples
Por que permitir a função gama, mas não outras funções? Se você inserir uma função arbitrária, passa a conseguir resolver o jogo como quiser
No fim, desde o começo vejo o texto como um problema cujas regras não foram bem definidas. É preciso especificar o conjunto de funções ou operações permitidas, e a intenção de mostrar como o problema se expande conforme o nível de conhecimento poderia ser mantida mesmo com esse ajuste
Se quiser, também dá para restringir a diferentes subconjuntos de funções e provar, dentro deles, quais números são possíveis ou impossíveis
O texto também falou em “ferramentas matemáticas”, não em funções arbitrárias
Porém, se forem permitidas apenas funções que levam tuplas de inteiros a inteiros
((Z, Z, ...) -> Z), o espírito original do jogo é preservadoAssim, raiz quadrada e logaritmo ficam de fora, adição, subtração e multiplicação ficam, mas divisão fica de fora. O fatorial
n!e a potenciação com expoentes não negativos também poderiam ser permitidosFico curioso se seria possível criar uma solução geral dentro dessa restrição
Se for “usar qualquer operação matemática”, é fácil: basta usar a função sucessor
S(n) = n+16 = 2*2*2-27 = S(2*2*2-2)8 = S(S(2*2*2-2))E assim por diante
Este quebra-cabeça não tem regras de verdade, mas essa função não parece nem um pouco conhecida
Se não for especificado concretamente quais operadores podem ser usados e quantas vezes, o projeto inteiro não fica muito consistente
Relacionado a isso, há também “Representing numbers using only one 4”, escrito em 1964 por Donald Knuth, então com 26 anos (https://www.jstor.org/stable/2689238)
Ele também foi republicado no capítulo 10 de Selected Papers on Fun and Games, e usa apenas um único número 4 e três operações:
√x(raiz quadrada),⌊x⌋(função piso) ex!(fatorial)Termina com uma conjectura ainda não resolvida sobre se todos os inteiros podem ser representados dessa forma
O apêndice anexado ao livro de 2011 também apresenta o artigo ainda anterior, de 1962, com 1,5 página, “π in Four 4's”, de J. H. Conway e M. J. T. Guy. É uma ideia parecida que eles escreveram quando eram estudantes em Cambridge: https://archive.org/details/eureka-25/page/18/mode/1up?view=...
Por exemplo,
5 = ⌊√√√√√(4!)!⌋, porque24!fica entre5^32e6^32Não sei se sou só eu, mas achei estranha a escolha de usar
sqrt(2+2)em vez desqrt(2*2)ousqrt(2^2)Ela obscurece desnecessariamente o motivo de
2=sqrt(2+2)O texto como um todo, cada argumento, a tese geral, as frases, a formatação etc. consomem largura de banda cognitiva, e talvez houvesse também pressão de tempo
Para quem critica, parece óbvio porque dá para se concentrar tranquilamente em apenas um ponto :)
O “hack de Dirac” provavelmente gastaria muitos pontos
2+2,2*2e2^2são todos obviamente 4, esqrt(4)=2; não entendo por que+seria mais estranho do que os outrosPessoalmente, prefiro mais o lado da concisão
Eu criei uma máquina de pilha que usava comandos de um único caractere e precisava resolver uma variação desse problema. Os números iam apenas de 0 a 9, e a sequência
23significava empurrar 2 para a pilha e depois empurrar 3. Para representar o número real 23, era preciso escrever algo como45*3+Então restava o problema de codificar cada inteiro com o menor número de caracteres possível
As ferramentas disponíveis eram os dígitos
0~9,P: Pi,*:(a * b),/:(a / b),-:(a - b),+:(a + b),s:sin(a),c:cos(a),q:sqrt(a),l:log(a),~:abs(a),#:round(a),$:Math.floor(a),C:clamp(a),<:min(a, b),>:max(a, b),^:pow(a, b),a:atan2(a, b),%:positiveMod(a, b),!:(1 - a),?:(a <= 0 ? 0 : 1),o:a xor b scaled by c; ((a*c) xor (b*c))/c,d: duplica o topo da pilha,:: troca os dois itens do topo,;: troca o item do topo com o terceiro itemFico curioso para saber o que daria para fazer se eu refizesse essa máquina de pilha mais tarde como uma pilha de números complexos
Da próxima vez que eu postar algo assim, não pretendo escrever pelo celular
https://en.wikipedia.org/wiki/Kolmogorov_complexity
" 23"digit + * digit + *, ou algo equivalenteDizem que é uma pequena falha “usar o número 2 só três vezes”, mas isso só vale se ignorarmos que a notação de radical assume um valor comum como padrão e esconde a potência 1/2
Há muitos 2 escondidos
Nesse caso, também teríamos de admitir que o 2 esconde
1+1, e o jogo se tornaria impossível?Como polinômios quadráticos são muito mais comuns do que polinômios de grau alto, a raiz quadrada parece mais fundamental do que uma potência arbitrária
Muita gente aponta que, ao permitir funções vistosas, o jogo fica ridículo, mas pessoalmente acho que boa parte da graça está em encontrar soluções satisfatórias mesmo sem restrições de regras bem específicas
Houve uma tarefa relacionada de engenharia reversa/CTF. Não vou dizer o nome para evitar trapaças, mas a minha solução foi injetar shellcode que somava um número específico ao ponteiro da pilha
Só que o shellcode inteiro, incluindo o número a ser somado, precisava usar apenas bytes ASCII alfanuméricos
Então usei um solucionador SAT para encontrar combinações de números a serem somados que chegassem ao valor desejado sem usar bytes proibidos
https://docs.google.com/presentation/d/19K7SK1L49reoFgjEPKCF...
Me lembrou o jogo mobile Tchisla. É um jogo em que você precisa formar todos os números até 1000 ou 10000 usando um número dado, alguns operadores, raiz quadrada,
!etc.É bem divertido; com o tempo você desenvolve estratégias, e a experiência de usuário é simples e eficiente. Só é bom saber de antemão que ele consome tempo demais
[0] https://apps.apple.com/fr/app/tchisla-number-puzzle/id110062...
Existe o clássico problema dos quatro 4, que aprendi quando era criança no livro “The Man Who Counted”
https://en.wikipedia.org/wiki/Four_fours
https://en.wikipedia.org/wiki/The_Man_Who_Counted
The Definitive Four Fours Answer Key
https://dwheeler.com/fourfours/
Foi com isso que aprendi sobre falsa indução. Também gostava da história em que as pessoas ficam enfileiradas, há algo preso nas costas delas, e elas precisam adivinhar o que é
É impressionante, mas há 2 demais escondido naquele símbolo de
sqrt