Complexidade de minimizar o tamanho da fórmula polinomial

28

Seja um polinômio grau em variáveis ​​acima de , onde é constante (digamos 2 ou 3). Gostaria de encontrar a menor fórmula para , em que "fórmula" e "tamanho da fórmula" são definidos da maneira óbvia (por exemplo, a menor fórmula para o polinômio é ).f(x1,,xn)dnF2dfx1x2+x1x3x1(x2+x3)

Qual é a complexidade desse problema - é NP-difícil? A complexidade depende de ?d

[Mais formalmente, uma fórmula (também conhecida como "fórmula aritmética") é uma árvore binária enraizada, cujas folhas são rotuladas com uma variável de entrada ou a constante 1. Todos os outros vértices da árvore são rotulados com ou \ times . O tamanho da fórmula é o número de folhas usadas. A fórmula calcula um polinômio recursivamente: + vértices calculam a soma de seus filhos em \ mathbb {F} _2 , \ times vértices calculam o produto. ]+×+F2×

Ashley Montanaro
fonte
1
não podemos reduzir o teste de identidade polinomial a esse problema?
Kaveh
4
Acho que pode haver uma conexão, mas não a vejo imediatamente - em particular por causa da restrição no grau. Além disso, se o problema for mais difícil que o teste de identidade polinomial, seria interessante saber o quanto mais difícil.
Ashley Montanaro
No seu caso, como é o número de portas ( + s, e × s) na fórmula relacionada com o tamanho real fórmula? Para d=2 , a construção em Ehrenfeucht e Karpinski 90 parece ser relevante (consulte o parágrafo 2XOR) para o tamanho da fórmula da "porta", mas tenho que pensar mais nisso.
Alessandro Cosentino
Como a fórmula é uma árvore binária, a definição do tamanho da fórmula que usei aqui (número de folhas) é igual ao número de portas (vértices internos) mais uma. Mas eu estaria interessado em qualquer resultado para qualquer outra definição sensata do tamanho da fórmula. Eu não estou certo que eu ver uma conexão com os resultados de Ehrenfeucht e Karpinski, como estes são sobre a complexidade de contar soluções, ao invés de minimizar o tamanho fórmula ...
Ashley Montanaro
Para contar o número de zeros, eles primeiro transformam a fórmula em um equivalente, o que me lembro de ser mínimo em termos de multiplicações e adições. Eu não tenho uma prova dessa minoria, no entanto. Novamente, isso responderia apenas ao caso . d=2
Alessandro Cosentino

Respostas:

7

Você pode reduzir o problema de co-NP-Complete TAUTOLOGY (dada uma fórmula booleana, é uma tautologia?) Ao problema de minimizar o tamanho da fórmula (já que uma fórmula é uma tautologia se for equivalente a VERDADEIRO). Além disso, TAUTOLOGY for 3DNFs (analogamente ao SAT para 3CNFs) é co-NP-Complete.

Dana Moshkovitz
fonte
1
Pelo que entendi a pergunta, deve ser computado como um polinômio, não como uma função. Talvez seja necessário algum esclarecimento. f
Markus Bläser
3
Há uma redução probabilística de 3SAT para verificação, dado um polinômio de deg-3 sobre GF (2), se ele tem zero [olhando para combinações lineares aleatórias das cláusulas] e, em seguida, para verificação, considerando 3 poli sobre GF (2), seja zero (subtraindo o poli de 1).
Dana Moshkovitz 14/09/11
1
Obrigado! Você tem alguma idéia de qual é a situação dos polinômios de grau 2? Além disso (embora isso seja provavelmente muito denso), estou lutando para ver como um polinômio de grau 3 sobre GF (2), escrito na forma padrão, pode ser totalmente zero sem ser o polinômio zero. Para ser claro, estou imaginando que a entrada para o meu problema é uma descrição do próprio polinômio, em vez de uma descrição de um circuito que computa o polinômio.
Ashley Montanaro
2
Mais uma vez obrigado pela sua resposta. Ainda não estou convencido sobre a coisa do zero; parece-me que qualquer polinômio n-variável sobre GF (2) com termos poli (n) pode ser facilmente transformado em uma forma padrão, onde é óbvio se o polinômio é zero ou não, apenas fazendo a substituição e termos de coleta. xkx
Ashley Montanaro
4
De fato, se você a tornar multilinear como você descreve, um polinômio é avaliado como zero em cada entrada, se for o polinômio zero. Uma prova: selecione um M monomial diferente de zero de grau mínimo. Defina como zero todas as outras variáveis. O único monômio sobrevivente é M. Ao definir os vars em M para 1, você obtém uma saída diferente de zero.
Manu
4

Não é exatamente a resposta, mas espero que ajude:

Essa questão já deve ser NP difícil para d = 2 se você quiser saber a fórmula mínima para polinômios e não apenas para um. A prova é a seguinte: Existe uma correspondência individual entre n fórmulas bi-lineares (fórmulas do tipon ) e as matrizes do tensor 3, isto é, elementos em F n 2F n 2F n 2 . Tal que a classificação tensorial da matriz é exatamente a complexidade de multiplicação de n fórmulas bi-lineares.aijxiyjF2nF2nF2n

Sabe-se que a classificação do tensor é um problema NP-difícil (provavelmente aproximar a classificação do tensor também é NP-difícil). Assim, a complexidade de multiplicação de n fórmulas b lineares é um problema NP-difícil3n

Klim
fonte
2
Obrigado! Essa é uma perspectiva interessante sobre o problema.
Ashley Montanaro
O seguinte teorema ajuda a passar de muitos polinômios para um polinômio: LEt S (f) complexidade de um polinômio, em seguida, a complexidade da computação de todas as suas derivadas é no máximo 5S (f). Assim, os polinômios de complexidade são quase iguais à complexidade def1,f2,,fnz1f1+z2f2znfn
Klim
Se você falar sobre a classificação do tensor, estará contando apenas multiplicações, mas não adições. O caso e apenas uma forma bilinear é fácil, pois é possível calcular a classificação de uma forma bilinear, usando os teoremas da estrutura mencionados na resposta de Ramprasad. (As provas destes teoremas é algorítmica, veja o livro de Lidl & Niederreiter.)d=2
Markus Bläser
2

Qualquer resposta para isso depende muito do vocabulário que você permite na resposta. Se você deseja sua resposta no mesmo idioma da entrada (ou seja, como um polinômio), isso leva a um conjunto de respostas, que é o que os outros pôsteres estão enfrentando.

Mas se você permitir que o seu vocabulário de respostas seja ampliado, coisas maravilhosas podem acontecer. Você pode ver um exemplo na diferenciação simbólica versus automática: na diferenciação simbólica, apenas se permitem 'expressões', que tendem a explodir bastante; na diferenciação automática, permite -se programas lineares na resposta (mesmo que a entrada seja uma expressão), o que ajuda bastante a controlar o aumento da expressão. Para polinômios univariados, James Davenport e eu meditamos que você precisa inserir polinômios ciclotômicos como parte de seu vocabulário básico (consulte as referências sobre por que esses polinômios parecem ser a única fonte real de explosão, bem como os trabalhos que mostram vários resultados de redutibilidade entre problemas polinomiais e 3SAT).

Em outras palavras, se você permitir variar um pouco a resposta que você considera uma resposta clássica, talvez consiga obter uma resposta bastante diferente, ou seja, uma com uma complexidade muito melhor. Depende da sua motivação original para fazer a pergunta, seja puramente teórica ou com um aplicativo em mente, decidir se essa variação no vocabulário é aceitável para você. No cenário em que James e eu estávamos pensando sobre isso (computação simbólica), ajustar o vocabulário para diminuir a complexidade é perfeitamente aceitável (embora raramente seja feito).

Jacques Carette
fonte
A pergunta pede a menor fórmula aritmética, que ela define claramente. Portanto, não tenho certeza de que essa resposta seja diretamente relevante. Além disso, a resposta acima de Dana Moshkovitz e os comentários associados não respondem corretamente à pergunta, como já foi reconhecido nos comentários.
Raphael
O ponto da minha resposta é que o OP pode não perceber que não está necessariamente fazendo a melhor pergunta. A pergunta do OP é feita em termos muito clássicos, mas se você permitir um pequeno desvio disso, obtém respostas bem diferentes, o que pode ter sido bastante inesperado. Entendo o seu comentário, mas sinto que o voto negativo é um pouco duro.
Jacques Carette
Você pode corrigir o primeiro parágrafo da sua resposta para deixar claro que a pergunta ainda não foi respondida corretamente? Eu estava preocupado que as pessoas pudessem enganar.
Raphael
1
@ Rafael: feito. E esclareceu ainda mais as coisas.
Jacques Carette
0

A minimização geral do circuito / fórmula é certamente mais difícil que o teste de identidade, pois o tamanho mínimo da fórmula de qualquer identidade é simplesmente zero. Quanto mais difícil, não tenho uma resposta definitiva, mas talvez os "algoritmos de reconstrução" estudados em circuitos / fórmulas aritméticos possam ser algo nesse sentido.

C3C

d

d=2x1x2+x3x4+..+x2k1x2k+

Ramprasad
fonte
Obrigado por seus comentários. Infelizmente, não vejo como usar essas idéias para resolver o problema original.
21411 Ashley Montanaro #